10

我们的网络应用程序向 iOS 和 Android 设备发送推送通知请求。

对于 iOS,Apple Push Notification Service 具有反馈服务,因此您可以检测哪些设备已卸载您的应用程序,然后将其从数据库中删除。

Android GCM 有类似的反馈服务吗?如果没有,如何检测哪些 Android 用户不再安装该应用程序?

4

2 回答 2

22

Android GCM 有类似的反馈服务吗?

不。

如果没有,如何检测哪些 Android 用户不再安装该应用程序?

引用文档

  1. 最终用户卸载应用程序。
  2. 第 3 方服务器向 GCM 服务器发送消息。
  3. GCM 服务器将消息发送到设备。
  4. GCM 客户端收到消息并询问包管理器是否有配置接收它的广播接收器,返回 false。
  5. GCM 客户端通知 GCM 服务器应用程序已卸载。
  6. GCM 服务器将注册 ID 标记为删除。
  7. 第 3 方服务器向 GCM 发送消息。
  8. GCM 向第 3 方服务器返回 NotRegistered 错误消息。
  9. 第三方删除注册ID。

请注意,从 GCM 中完全删除注册 ID 可能需要一段时间。因此,在上述步骤 7 中发送的消息可能会获得一个有效的消息 ID 作为响应,即使该消息不会被传递到设备。最终,注册 ID 将被删除,服务器将收到 NotRegistered 错误,而无需从 3rd 方服务器进行任何进一步的操作(这种情况在开发和测试应用程序时经常发生)。

于 2013-05-16T19:16:14.803 回答
1

GCM 会以“NotRegistered”错误响应您(假设您使用 HTTP)。此外,GCM 最近发布了适用于 iOS 的版本,因此您可以使用它来发送 Android 和 iOS 通知。

于 2015-06-10T23:28:24.003 回答