我在服务器和客户端都实现了GCM。 我有2个Android手机作为客户端来测试我的应用程序中的推送通知功能。 GCM工作正常,但我发现了一个奇怪的行为。 我使用相同的ID登录了我的第二部手机,以测试这两款手机是否可以获得相同的推送效果 信息。然后我发送推送通知,绝对有效! 但问题是我的第二部手机再次收到相同的推送信息。
我无法从我的注册ID DB中找到任何线索(只有2个注册ID)。 所以,我检查了下面的GCM服务器响应。 这是个问题。成功算的意义是什么? 这是否意味着我的服务器发送了2次推送请求?
{ “multicast_id”:6323573331427315745, “成功”:2, “失败”:0, “canonical_ids”:0 “结果”:[{ “MESSAGE_ID”: “0:1385545930612944%6d7e418ff9fd7ecd”},{“MESSAGE_ID “:”0:1385545930613926%6d7e418ff9fd7ecd“}]}>>> { “状态”: “成功”, “登录”:真 “ERRORMSG”: “”, “结果”:{ “结果”:XXX}}
感谢您的支持。
答案 0 :(得分:1)
服务器响应意味着您向两个注册ID发送了相同的消息,并且Google的GCM服务器接受了您的消息以进行传递,并且已交付或将尝试将这些消息传递到这两个设备。在两台设备中使用同一用户登录并不重要。每个设备都有自己的应用注册ID。
答案 1 :(得分:1)
请检查GCM HTTP connection response format。
success
- >在没有错误的情况下处理的邮件数。