Android Gcm onMessage()..在某些设备上收到“null”,如“Android 4.4 LG GPad 1.0”和“Android 6.0 Lg G4”.. 但在某些设备中,Gcm重现了正确的消息,如“Android 5.1 Samsung J5和J2”...... 我不能解决的问题是什么...... 这是代码......
protected void onMessage(Context context, Intent intent) {
Log.i(TAG, "Received message");
//Bundle extras = intent.getExtras();
String message = intent.getExtras().getString("message");
<receiver
android:exported="true"
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 droid:name="com.google.android.c2dm.intent.REGISTRATION"/>
<category android:name="com.xtravoapps.premierdocfinder" />
</intent-filter>
</receiver>
<service android:name="MYPACKAGENAME.GCMIntentService" />
答案 0 :(得分:2)
我们在几个Android设备版本6.0.1,5.0.1和4.4.4的推送通知中收到空消息。在不更改Android应用程序或服务器应用程序的情况下,某些设备变为空,而许多其他设备正在获取正确的消息,但越来越多的设备变为空。
根据我们的测试结果显示,获得空推送通知消息的Android设备(手机,平板电脑)是Google Play服务版本为9.4.52的设备。其他早期版本的Google Play服务设备正常运行,直到自动更新为9.4.52。
我们将几个从9.4.52收到空的设备降级回早期版本。降级后,我们向这些设备发送推送通知,他们正确地收到消息并修复了空消息问题。
要求我们的Android用户降级播放服务以获取我们的应用通知可能不切实际,因此我们可以通过播放服务9.4.52查看是否有任何更改可以解决此问题。
希望这有助于回答问题&#34; GCM为什么在某些设备上接收空值&#34;。
答案 1 :(得分:0)
可能是因为googlePlay服务未更新