[문제 발생!]
열악한 개발환경으로인해 Android 2.3 이 깔린 갤럭시S 에서 테스트를 진행하며 개발하였다.
자체 푸시서비스를 개발하면서 서비스 등록이 필요했고
폰 부팅완료시 자동으로 서비스가 떠야했다.
2.3 에서는 정말 개발하는척척 잘 되더라
근데 왠걸.. 갤3, 갤4 등등 전부 앱을 task kill 한다음에 재부팅할경우 서비스가 뜨지 않더라
차이점을 비교해보았더니 Android 버전밖에 없더라..
그래서 어케든 정보를 찾아보고자 이곳저곳을 뒤졌으나.. 정보가 없더이다.
뭐.. Android 3.0 이상부터는 Activity 가 없으면 서비스실행이 안된다는말도있고..
[해결!]
구구절절한 구글에 널린 내용은 작성하지 않도록 하겠다
(뭐.. BroadcastReceiver 를 만들어서~ android.intent.action.BOOT_COMPLETED 를 수신받을 때 서비스를 구동시켜라 라는 내용인데 이건 이곳저곳에 널렸다)
근데 난 실행이 안되더이다. 그래서 여러번에 삽질끝에 해결했다.
패키지 << !!!
실제 앱 패키지는 com.test.myapp << 여기인반면에
내가 만든서비스 패키지는 com.test.mqtt 요 아래에 잇었다.
내가 내린 결론의 요약
---- > 추측하건데 매인 엑티비티와 패키지가 달라서 서비스실행이 안되었던듯 하다
고로 com.test.mqtt 에 만들었던 서비스를 com.test.myapp 아래로 옮기고, BroadcastReceiver 또한 com.test.myapp 아래에 다시 작성했다
그랫더니 부팅 직후에 잘 실행 되더이다
부디 여러분께 도움이 되었기를 ~ 뿅
댓글
댓글 쓰기