마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

설치 후 숨긴 앱을 다이얼 입력을 이용해서 실행시키고 싶습니다.

0 추천

 안녕하세요 신입 개발자입니다.

 
 제가 만든 앱을 처음 설치하게 되면 실행이 한번 된 후 아이콘이 감춰지게 돼있습니다. (로그를 찍는 앱이라 보일 필요가 없음.)
그리고 나중에 실행할 때는 다이얼을 눌러서 앱을 실행하게 끔
다이얼을 받는 리시버를 등록하여 구현을 했습니다.
 
아이콘 감춰지는 것 잘 되고, 다이얼을 눌러서 리시버까지 도달도 잘됩니다. (앱 실행까지)
 
그런데 문제는 두 가지 경우를 각각 따로 테스트 하면 잘 되는데
 
첫 실행 시 아이콘을 감추고 액티비티를 나간 후 다이얼로 앱을 실행시키려 하면 아래와 같은 로그가 나타납니다.
 
 FATAL EXCEPTION: main
 
 java.lang.RuntimeException: Unable to start receiver com.btb.pump.pps.receiver.DialPadReceiver: android.content.ActivityNotFoundException: Unable to find explicit activity class {com.btb.pump.pps.master/com.btb.pump.pps.MainActivity}; have you declared this activity in your AndroidManifest.xml?
  at android.app.ActivityThread.handleReceiver(ActivityThread.java:2249)
....중략
 Caused by: android.content.ActivityNotFoundException: Unable to find explicit activity class {com.btb.pump.pps.master/com.btb.pump.pps.MainActivity}; have you declared this activity in your AndroidManifest.xml?
  at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1571)
  at android.app.Instrumentation.execStartActivity(Instrumentation.java:1423)
  at android.app.ContextImpl.startActivity(ContextImpl.java:968)
  at android.app.ContextImpl.startActivity(ContextImpl.java:957)
  at android.content.ContextWrapper.startActivity(ContextWrapper.java:276)
  at android.content.ContextWrapper.startActivity(ContextWrapper.java:276)
  at com.btb.pump.pps.receiver.DialPadReceiver.onReceive(DialPadReceiver.java:24)
  at android.app.ActivityThread.handleReceiver(ActivityThread.java:2242)
  ... 10 more                                                                                                                                                                     
 
로그 내용을 보면 아시겠지만   {com.btb.pump.pps.master/com.btb.pump.pps.MainActivity}와 같은
패키지와 클래스를 찾지 못하겠다고 하고 AndroidManifast.xml에 패키지를 명시했냐고 나오는데
분명 명시돼있고 매니페스트에는 다이얼로 앱을 깨우기 위한 리시버를 추가했을 뿐입니다.
 
제 추측으로는 앱이 프로그램 목록에는 있으나 숨어버렸으니
리시버에서 다이얼 입력을 받아 앱을 실행할 때에 앱을 찾지 못하는 것 같습니다..
 
이유는 어느정도 알겠는데 어떻게 해결해야 하는건가요?
 
이상입니다..

 

윤둥이 (4,560 포인트) 님이 2013년 11월 15일 질문

답변 달기

· 글에 소스 코드 보기 좋게 넣는 법
· 질문에 대해 추가적인 질문이나 의견이 있으면 답변이 아니라 댓글로 달아주시기 바랍니다.
표시할 이름 (옵션):
개인정보: 당신의 이메일은 이 알림을 보내는데만 사용됩니다.
스팸 차단 검사:
스팸 검사를 다시 받지 않으려면 로그인하거나 혹은 가입 하세요.
...