我在所有在线文档和教程之后都有C2DM设置。我的设备成功注册,并存储registrationId。
当我请求注册时,设备会获得com.google.android.c2dm.intent.REGISTER意图。
然后我将此registrationId传递给我的服务器并向其发送C2DM消息,该消息成功关闭,返回messageId。
现在的问题是我发送邮件后,设备会获得com.google.android.c2dm.intent.REGISTER意图,而不是com.google.android.c2dm.intent.RECEIVE意图。< / strong>
这个意图有EXTRA_UNREGISTERED EXTRA - 所以在handleRegistration()中它会清除registrationId。
我无法想象我的生活。我的代码与ChromeToPhone演示完全相同。
答案 0 :(得分:0)
我认为这可能是由AndroidManifest.xml中的问题引起的 - 尽管检查了20次。
我有
<permission android:name="co.sample.permission.C2D_MESSAGE" android:protectionLevel="signature" />
<uses-permission android:name="co.sample.c2dm.permission.C2D_MESSAGE" />
请注意,权限的名称不匹配。请注意,C2DM的许多功能都可以解决小型Manifest问题。