我最近在三星Galaxy Tab 10.1“运行库存Honeycomb上使用C2DM。我终于让设备注册,我的服务器发送了推送消息,但是,当我试图在Motorola Xoom上运行完全相同的代码时(运行股票Honeycomb),两个索尼平板电脑(运行股票Honeycomb)和一个电话(运行CM7.1)没有一个工作。
我为每个设备获得了新的注册ID,并一次又一次地尝试,但始终只有三星工作。
我在onRecieve()
课程的BroadcastReceiver
中有一个打印声明,每次都会打印这些声明,以便注册每个设备。它只会在三星平板电脑上再次打印(当我发送推送消息时)。有谁知道为什么会发生这种情况?
我会发布一些代码,但老实说我不知道要发布哪些代码。我甚至不知道它是服务器端还是客户端。但是,我确实尽可能地遵循Google Doc。
答案 0 :(得分:1)
确保每个设备都已正确注册,并在向Google发送POST请求时传入正确的设备ID。此外,设备需要登录Google帐户。请在此处查看所有要求:http://code.google.com/android/c2dm/
此外,如果设备已注册,请不要再次注册。一旦注册,请在onReceive
中确认,如果是,请尝试发送带有效负载的实际推送。