我正在尝试为我的Android应用创建推送服务,并遵循Google GCM的文档和示例进行处理:
我可以注册/注销我的Android应用程序。从服务器端,我可以看到已经注册了一个订阅,但是当我尝试将消息从服务器发送到我的Android应用程序时,总是出现以下错误:
对于我的Android应用,我使用SENDER_ID = 200000000001。
对于Google所说的服务器端,我使用API_KEY = AIzxxxxxxxxxxxxxxxxXxxXxxXxxxXXXXXxxxxxxs
我遵循了这份文件:
我也在Google API面板中启用了GCM,但是我会收到该烦人的错误消息。
我该如何解决这个问题?
最佳答案
您的服务器是否使用了GCM服务器返回给您的应用的新注册ID?如果尝试将消息发送到旧C2DM服务器给出的注册ID,我就遇到了这个问题。
还要仔细检查发件人ID和API_KEY,它们必须匹配,否则您将收到MismatchSenderId错误。在Google API控制台中,查看您的项目的URL:
https://code.google.com/apis/console/#project:xxxxxxxxxxx
xxxxxxxxx是项目ID,即发件人ID。
并确保API key 属于“服务器应用程序的 key (具有IP锁定)”