我几天来一直在敲打这个问题。我可以使用GCM轻松注册我的手机,并从服务器端向Google发送消息。借助Google的诊断功能,您可以比以往更轻松地确认:
但是,该消息未发送到我的手机。根据诊断页面和文档,一旦手机在线并且可以检索到消息,状态将变为“已发送”,但是,这种情况永远不会发生。所有教程都没有帮助解决这个问题,我甚至不确定如何调试这个问题。请帮忙!
更新 - 2015年6月9日 我发现用于发送此消息的设备令牌不是电话当前拥有的设备令牌。我已经实现了一个更好的系统来正确更新令牌ID。根据我的理解,GCM应该能够告诉我一个给定的设备令牌不再有效,但显然这里没有发生,因为我收到带有消息ID的OK响应。它正在为不再存在的令牌排队消息(即应用程序已卸载并重新安装)。这是预期的行为吗?有没有办法让应用服务器知道此令牌不再有效?