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

GCM 수신해서 홈페이지 뛰우는데 에러가 발생합니다.

0 추천
gcm 구현은 완료했고요

로그를 통해서 수신 값도 정상으로 들어오는 것도 확인했습니다.

 

근데.. 인텐트를 뛰우는데 자꾸 에러가 납니다.

 

"죄송합니다.

애플리케이션이 예상치 않게 중지되었습니다. 다시 시도해 주세요"

 

제가 인텐트를 뛰운 방식은 그냥 action_view 형식입니다.

Intent myIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
startActivity(myIntent);
finish();

서비스 단 @Override
    public void onMessage(Context context, Intent intent) {

에서 구현했는데 왜 이런 에러가 나는걸까요? ㅠㅠ

 

로그캣

03-03 10:52:00.759: E/AndroidRuntime(6898): FATAL EXCEPTION: IntentService[GCMIntentService-164781088197-2]
03-03 10:52:00.759: E/AndroidRuntime(6898): android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activity  context requires the FLAG_ACTIVITY_NEW_TASK flag. Is this really what you want?
03-03 10:52:00.759: E/AndroidRuntime(6898):  at android.app.ContextImpl.startActivity(ContextImpl.java:883)
03-03 10:52:00.759: E/AndroidRuntime(6898):  at android.content.ContextWrapper.startActivity(ContextWrapper.java:276)
03-03 10:52:00.759: E/AndroidRuntime(6898):  at com.example.alsms.GCMIntentService.onMessage(GCMIntentService.java:88)
03-03 10:52:00.759: E/AndroidRuntime(6898):  at com.google.android.gcm.GCMBaseIntentService.onHandleIntent(GCMBaseIntentService.java:223)
03-03 10:52:00.759: E/AndroidRuntime(6898):  at android.app.IntentService$ServiceHandler.handleMessage(IntentService.java:65)
03-03 10:52:00.759: E/AndroidRuntime(6898):  at android.os.Handler.dispatchMessage(Handler.java:99)
03-03 10:52:00.759: E/AndroidRuntime(6898):  at android.os.Looper.loop(Looper.java:137)
03-03 10:52:00.759: E/AndroidRuntime(6898):  at android.os.HandlerThread.run(HandlerThread.java:60)
초봉초봉 (3,480 포인트) 님이 2014년 3월 3일 질문
초봉초봉님이 2014년 3월 3일 수정
뛰우는데 -> 띄우는데

1개의 답변

0 추천
 
채택된 답변
Logcat....Logcat를 주세요.. 모든 애러는 Logcat에 다 나와 있습니다.
카이래이언 (2,700 포인트) 님이 2014년 3월 3일 답변
초봉초봉님이 2014년 3월 3일 채택됨
애러 -> 에러 .........
로그캣 자료 첨부할게요^^

03-03 10:52:00.759: E/AndroidRuntime(6898): FATAL EXCEPTION: IntentService[GCMIntentService-164781088197-2]
03-03 10:52:00.759: E/AndroidRuntime(6898): android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activity  context requires the FLAG_ACTIVITY_NEW_TASK flag. Is this really what you want?
03-03 10:52:00.759: E/AndroidRuntime(6898):     at android.app.ContextImpl.startActivity(ContextImpl.java:883)
03-03 10:52:00.759: E/AndroidRuntime(6898):     at android.content.ContextWrapper.startActivity(ContextWrapper.java:276)
03-03 10:52:00.759: E/AndroidRuntime(6898):     at com.example.alsms.GCMIntentService.onMessage(GCMIntentService.java:88)
03-03 10:52:00.759: E/AndroidRuntime(6898):     at com.google.android.gcm.GCMBaseIntentService.onHandleIntent(GCMBaseIntentService.java:223)
03-03 10:52:00.759: E/AndroidRuntime(6898):     at android.app.IntentService$ServiceHandler.handleMessage(IntentService.java:65)
03-03 10:52:00.759: E/AndroidRuntime(6898):     at android.os.Handler.dispatchMessage(Handler.java:99)
03-03 10:52:00.759: E/AndroidRuntime(6898):     at android.os.Looper.loop(Looper.java:137)
03-03 10:52:00.759: E/AndroidRuntime(6898):     at android.os.HandlerThread.run(HandlerThread.java:60)
액티비티 플레그 뭐시기 그러는거 같은데...
이거 한번 추가 해 보세요
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
Activity 가 아닌 applicationcontext 에서 액티비티를 호출시엔 카이래이인님의 답변대로 플래그를 추가하여야 합니다.
아 됩니다.^^ 카이래이언님 감사합니다.
아프제로님도 감사합니다.^^
...