- 规范ID = 0 表示您的推送服务器使用的注册ID是可以的,不应将其替换为规范ID,即,通常GCM服务器将响应canonical_id =0。如果由于某些原因,您的服务器在实际注册ID上发送了推送,则GCM不实际服务器的响应将是:
GCM HTTP状态:200 GCM响应正文:
{ "multicast_id": 7036866281258904189, "success": 1, "failure": 0, "canonical_ids": 1, "results": [ { "registration_id": "APA91bH88lV-u5XNdJoF5p0W2d0F_z_7AM6_cjx1e62s83bvDZYcdU_lkmRaFdnkZ5PPUBdYssfpB2QygMW5V0kTqVpV4atCyKpnBEkVnd_YTY0qr4V9oHSyYpv_HIDGNzpfHyGfXz5fWCKnlnACHr37y1zT91JcrHyUMR6DB15WzwjAE1QtloI", "message_id": "0:1415529915241995%64ac3713f9fd7ecd" } ]}现在, cannonical_ids = 1
,这意味着您的服务器必须将新的值替换为现有的注册ID,以作为响应。如果用户重新安装您的客户端应用程序,则这种情况很容易重现,但是您的推送服务器不知道该情况,因此GCM服务器将以响应方式传递新的注册ID。您可以在我的测试推送服务器上测试这种情况
- @ mandeep_m91关于message_id和multicast_id我只建议您阅读文档。在实践中,我还没有使用此字段



