在使用基于IdentityId的令牌时从GCM获取INVALID_REQUEST Nack

时间:2015-07-03 08:53:16

标签: android google-cloud-messaging

我通过XMPP向GCM发送下游消息。 GCM使用INVALID_REQUEST返回Nack。有什么问题?

JSON请求:
{ "to":"di3gR2FnkqU:APA91bFVzCMvkcp14ul9S8dg145D4ahjk_Pdieuh5-Yo-lmS_wB59bAzLmRdo7e5g-lVEkLHA1WnMJt3iw49jWwXymivhuK8sVFs9bF3gY9HwqSJM7zCr2iDXxrmOeB9qIhnVC8URFcg", "message_id":"3e2601b5-b346-4f10-a098-0752f2bd4121", "data":{"payload":""}, "delivery_receipt_requested":false }

XMPP数据包:
<message id='X99Mc-12'><gcm xmlns="google:mobile:data"> {&quot;to&quot;:&quot;di3gR2FnkqU:APA91bFVzCMvkcp14ul9S8dg145D4ahjk_Pdieuh5-Yo-lmS_wB59bAzLmRdo7e5g-lVEkLHA1WnMJt3iw49jWwXymivhuK8sVFs9bF3gY9HwqSJM7zCr2iDXxrmOeB9qIhnVC8URFcg&quot;,&quot;message_id&quot;:&quot;3e2601b5-b346-4f10-a098-0752f2bd4121&quot;,&quot;data&quot;:{&quot;payload&quot;:&quot;&quot;},&quot;delivery_receipt_requested&quot;:false}</gcm></message>

GCM回复:
{"message_id":"3e2601b5-b346-4f10-a098-0752f2bd4121", "from":"di3gR2FnkqU:APA91bFVzCMvkcp14ul9S8dg145D4ahjk_Pdieuh5-Yo-lmS_wB59bAzLmRdo7e5g-lVEkLHA1WnMJt3iw49jWwXymivhuK8sVFs9bF3gY9HwqSJM7zCr2iDXxrmOeB9qIhnVC8URFcg", "error_description":"", "error":"INVALID_REQUEST", "message_type":"nack"}

2 个答案:

答案 0 :(得分:0)

客户端应用程序使用了错误的包名称。使用的软件包名称与在https://developers.google.com/mobile/add为应用程序启用Google服务时使用的软件包名称不同。

答案 1 :(得分:0)

确保您发送了正确的消息结构或所需的参数。

我不知道它是否有帮助,但尝试使用“dry_run”参数发送此消息(用于测试您的消息而不将其发送到真实设备)。