未调用GCMIntentService的onRegistered()

时间:2015-02-18 13:07:04

标签: android push-notification google-cloud-messaging

未调用GCMIntentService的onRegisterd()方法。

在日志中显示如下: onReceive:com.google.android.c2dm.intent.REGISTRATION GCM IntentService类:com.example.dailysales.GCMIntentService 获取唤醒锁 我的AndroidManifest.XML文件代码如下:

<receiver
        android:name="com.google.android.gcm.GCMBroadcastReceiver"
        android:permission="com.google.android.c2dm.permission.SEND" >
        <intent-filter>

            <!-- Receives the actual messages. -->
            <action android:name="com.google.android.c2dm.intent.RECEIVE" />
            <!-- Receives the registration id. -->
            <action android:name="com.google.android.c2dm.intent.REGISTRATION" />

            <category android:name="com.example.dailysales" />
        </intent-filter>
    </receiver>

    <service android:name="com.example.dailysales.backgroundservice.InboxMessageLoadingService" >
    </service>
    <service
        android:name=".GCMIntentService"
        android:enabled="true" >
    </service>

1 个答案:

答案 0 :(得分:1)

这个答案可能会对您有所帮助:https://stackoverflow.com/a/18598887/4195406

您正在使用Google GCM客户端库中的com.google.android.gcm.GCMBroadcastReceiver广播接收器。此类要求intent服务位于应用程序的主程序包中。

您应该将GCMIntentService移至应用的主要包裹,或覆盖GCMBroadcastReceiver