规范注册ID和消息ID格式

8
  1. 我对理解Canonical Registration Id存在问题,而且在尝试注册两个Android应用(以测试Canonical Registration Id)后,当我试图向两个Registration Ids推送消息时,无法从Google返回一个Canonical Registration Id。

  2. 此外,我想了解Google返回的消息ID格式意味着什么。我可以在日志中看到它似乎由三个部分组成:<something>:<something2>%<something3>。你有什么想法吗?第三部分是否标识设备?

    [INFO com.bipper.filters.PushUpdatesFilter] [ messageId=0:1349819220154718%921c249a6e2555b5 ] [INFO com.bipper.filters.PushUpdatesFilter] [ messageId=0:1349819220242456%921c249a6e2555b5 ]

1个回答

21

我通过以下方式从GCM获取了规范化的注册ID:

  1. 初始状态:应用程序已安装在Android设备上,并已注册到GCM。发送者服务器拥有注册ID并能够向该设备发送消息。

  2. 卸载应用程序。

  3. 向原始(旧)注册ID发送两条消息。第一条将会成功(服务器将从GCM服务器收到成功的回复),而第二次尝试将导致“未注册”错误。

  4. 重新安装应用程序并注册到GCM。设备将获得新的注册ID。

  5. 使用旧的注册ID发送一条消息。应用程序将接收到消息,但服务器将在回复中返回新的规范化注册ID。


无法在我的情况下工作,我已经向旧应用程序“reg_id”和重新安装的应用程序“reg_id”发送了消息,但对于旧应用程序,GCM显示{error:'NotRegistered'},而且'canonical_ids:0',我仍然没有得到canonical_ids,请问为什么它对我不起作用? - Sudhanshu Gaur

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接