我们的网络应用程序会向iOS和Android设备发送推送通知请求。
对于iOS,Apple推送通知服务有一个反馈服务,因此您可以检测哪些设备已卸载您的应用程序,然后将其从数据库中删除。
Android GCM是否有类似的反馈服务?如果没有,如何检测哪些Android用户不再安装该应用?
答案 0 :(得分:22)
Android GCM是否有类似的反馈服务?
没有
如果没有,如何检测哪些Android用户不再安装该应用?
- 最终用户卸载该应用程序。
- 第三方服务器向GCM服务器发送消息。
- GCM服务器将消息发送到设备。
- GCM客户端收到消息并查询Package Manager是否有广播接收器配置为接收它,返回false。
- GCM客户端通知GCM服务器已卸载该应用程序。
- GCM服务器标记要删除的注册ID。
- 第三方服务器向GCM发送消息。
- GCM向第三方服务器返回NotRegistered错误消息。
- 第三方删除注册ID。
醇>请注意,注册ID可能需要一段时间才能从GCM中完全删除。因此,即使消息不会被传送到设备,上面步骤7中发送的消息也可能获得有效的消息ID作为响应。最终,注册ID将被删除,服务器将收到NotRegistered错误,而不需要第三方服务器的任何进一步操作(这种情况在开发和测试应用程序时经常发生)。
答案 1 :(得分:1)
GCM将使用" NotRegistered"错误(假设您使用HTTP)。 此外,GCM最近已针对iOS发布,因此您可以使用它来提供Android和iOS通知。