2012-09-26 2 views
7

onRegistered 메소드가 호출되지 않습니다. logcat에서 마지막 라인이 wakelock을 획득하는 것으로 나타납니다. 03 :GCM onRegistered가 호출되지 않았습니다.

  • 09-26 23.285 14 : D/GCMRegistrar (15820) : 03 : 23.285 :
  • 09-26 14 백 오프 재설정 V/GCMRegistrar (15,820) *는 등록 앱 보낸 사람 735175912799
  • 09-26 14 : 03 : 23.895 : V/GCMBroadcastReceiver (15820) : onReceive : - com.google.android.c2dm.intent.REGISTRATION 09-26 14 : 03 : 23.895 : V/GCMRegistrar 15820) : 재시도 수신기 클래스의 이름을 * .notifications.MyGCMBroadcastReceiver로 설정
  • 09-26 14 : 03 : 23.895 : V/GCMBroadcastReceiver (15820) : GCM IntentService 클래스 : - * .notifications.GCMIntentService
  • 09-26 14 : 03 : 23.903 : V/GCMBaseIntentService (15820) :

내가 내 자신의 브로드 캐스트 리시버가 취득 가동 잠금 :

import com.google.android.gcm.GCMBroadcastReceiver; 

public class MyGCMBroadcastReceiver extends GCMBroadcastReceiver { 

    @Override 
    protected String getGCMIntentServiceClassName (Context context) { 
     return GCMIntentService.class.getCanonicalName(); 
    } 

} 

답변

1

나는 비슷한 문제가 있었다. 다음

<service android:name=".GCMIntentService"/> 
1

일반적인 솔루션입니다 : 내가 ApplicationManifest.xml에 추가하는 것을 잊었다 밝혀졌다 "GCMIntentService"

2) 기본 패키지에 GCMIntentService을 넣어

1) 이름은 당신이 서비스

3) GCM 등록 요청 전화를 보내기 전에

GCMRegistrar.checkDevice(this); 
GCMRegistrar.checkManifest(this); 

기기 나 메디 페스트에 문제가 있으면 알려줄 것입니다. 4) 사용 권한을 확인하십시오. 특히 권한에서 패키지 갈기를 확인하십시오. 이것은 중첩입니다. 패키지 이름을 허락하면 엉망입니다. 최신 안드로이드 (Jelly Bean +)에서는 작동하지만 하위 장치에서는 실패합니다.

관련 문제