php - 如何解析 GCM 响应以使用 php 从服务器中删除无效的注册 ID

标签 php android push-notification google-cloud-messaging

我有一个关于 Google Cloud Messaging 的问题...

我将 GCM 发送给 Google 以获取 3 个注册 ID,然后 Google 回复说其中 2 个注册 ID 已成功发送,一个未成功发送,因为注册 ID 错误!

但它没有告诉我还没有发送哪个注册ID...

现在我的问题是: 我如何解析 Google GCM 响应以获取尚未发送的注册 ID? Google 是否有 API 或其他东西,以便我可以给它“multicat_id”并告诉我哪个注册 ID 有问题?

非常感谢任何帮助,我只是很困惑:)

最佳答案

它是基于顺序的:

假设你发送这个:

{ "collapse_key": "score_update",
  "time_to_live": 108,
  "delay_while_idle": true,
  "data": {
    "score": "4x8",
    "time": "15:16.2342"
  },
  "registration_ids":["4", "8", "15", "16", "23", "42"]
}

并从 Google 获得此响应:

{ "multicast_id": 216,
  "success": 3,
  "failure": 3,
  "canonical_ids": 1,
  "results": [
    { "message_id": "1:0408" },
    { "error": "Unavailable" },
    { "error": "InvalidRegistration" },
    { "message_id": "1:1516" },
    { "message_id": "1:2342", "registration_id": "32" },
    { "error": "NotRegistered"}
  ]
}

这意味着您发送的第 3 个注册 ID (15) 无效,第 6 个 (42) 未注册。两者都应从您的数据库中删除。

关于php - 如何解析 GCM 响应以使用 php 从服务器中删除无效的注册 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16921189/

相关文章:

php - curl 是否在远程服务器上执行 PHP 脚本?

Android Studio 无法识别 GSON 库

iOS 推送通知不适用于带有 Test Flight 的临时分发

ios - flutter IOS : CocoaPods could not find compatible versions for pod "simple_permissions":

java - 如何从 Firestore 数据库检索特定数据?

javascript - 解析云代码推送通知不起作用

php - 我的第一个数据库连接

javascript - XHR 更新失败,字符串包含 "#",其中表单发布成功

php - 使用下拉菜单动态过滤 Wordpress 帖子(使用 php 和 ajax)

java - 如何循环 JSON 并将其转换为 Java 对象