有谁知道为什么有些设备不会收到推送通知?

问题描述:

我最近一直在使用三星Galaxy Tab 10.1上的C2DM“运行股票Honeycomb。我最终获得了设备注册,并且我的服务器发送了推送消息,但是,当我尝试在Motorola Xoom上运行完全相同的代码时运行Stock Honeycomb),两台索尼平板电脑(运行Stock Honeycomb)和一部电话(运行CM7.1)都不工作。只有三星工作有谁知道为什么有些设备不会收到推送通知?

我在我的BroadcastReceiver类的onRecieve()打印声明,这每获得打印每一个设备的注册每一个设备它只能再次打印(当我发送一个推送消息)在三星平板电脑上。有谁知道为什么会发生这种情况?

我会发布一些代码,但我真的不知道我的代码发布哪一部分。我甚至不知道它是服务器端还是客户端。不过,我尽可能地尝试遵循Google Doc。

确保每个设备都已正确注册,并且在向POST发送POST请求时传入正确的设备ID。此外,这些设备需要登录Google帐户。请检查此处的所有要求:http://code.google.com/android/c2dm/

另外,如果设备已经注册,请不要再注册一次。一旦它被注册,在onReceive确认它,如果它是,然后尝试发送一个实际推送与有效载荷。

+0

我已经完成了文档中的所有要求,我一遍又一遍地复制并粘贴了注册设备ID。我已经三次检查了我注册设备的电子邮件地址,并确保他们通过在后台运行gmail和市场来登录。感谢您的回复,虽然 – NotACleverMan

+0

我已经解决了这个问题。我认为用于注册的“senderEmailAddress”是想要注册的设备的电子邮件,而不是将要发送消息的服务的电子邮件地址。我改变了它,它工作得很好。它在你链接的文档中,所以我接受了它。谢谢。 – NotACleverMan

+1

@NotACleverMan啊是的!发件人是你!很高兴你有它的工作。 – LuxuryMode