尝试配置推送通知时出现以下错误:
06-07 01:05:59.735 18708-18708/com.ebr.apps.ebr.development E/FirebaseInstanceId: Failed to resolve target intent service, skipping classname enforcement
06-07 01:05:59.735 18708-18708/com.ebr.apps.ebr.development E/FirebaseInstanceId: Error while delivering the message: ServiceIntent not found.
我在gradle中有不同的口味:
我的代码包名称是: com.ebr.apps.ebr 我的产品风味包是: com.ebr.apps.ebr.development
我已将google-services.json放在 app / src / development
中清单:
<permission
android:name="${applicationId}.permission.C2D_MESSAGE"
android:protectionLevel="signature"/>
<uses-permission android:name="${applicationId}.permission.C2D_MESSAGE"/>
<receiver
android:name="com.google.android.gms.gcm.GcmReceiver"
android:exported="true"
android:permission="com.google.android.c2dm.permission.SEND" >
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
<action android:name="com.google.android.c2dm.intent.REGISTRATION" />
<category android:name="${applicationId}" />
</intent-filter>
</receiver>
<service
android:name=".GCM.PushNotificationService"
android:exported="false">
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE"/>
</intent-filter>
</service>
我看了很多例子,但仍然收到此错误。
答案 0 :(得分:7)
我找到了解决方案,问题是Instabug GCMListener与我的GCMListener冲突了。我设置了我的gcm监听器的优先级,它开始工作。
<service
android:name=".GCM.PushNotificationService"
android:exported="false">
<intent-filter android:priority="10000">
<action android:name="com.google.android.c2dm.intent.RECEIVE"/>
</intent-filter>
</service>
答案 1 :(得分:2)
如果您来自搜索引擎:您可能遇到此错误,这也会影响当前版本的com.google.android.gms:play-services-gcm:9.8.0
https://github.com/firebase/quickstart-android/issues/72
目前尚无法重现该错误,但尚未完全了解情况如何发生,但您可能对跟踪该主题感兴趣。