我正在通过GCM(Google Cloud Messaging)发送以下JSON,但无法通过客户端获取正确的响应数据。我收到推送通知响应,但标题是应用程序的名称,并且文本显示为:“ message”,因此我无法正确显示通知。

这是我要发送的JSON:

{
  "to": "somekey",
  "notification": {
      "body":"Test",
      "title":"Test"
  },
  "data": null
}

最佳答案

我认为您的问题出在您邮件有效负载的键值上。

如您在GCM Server documentation上看到的,可以使用两个不同的键来设置有效负载:


数据:此参数指定消息有效负载的键值对。
notification:此参数指定通知有效负载的键值对。


您应该使用数据密钥并在通知的有效负载内进行设置。发送后,您可以打印收到的通知的结果,并查看数据密钥内是否有正确的有效负载。

您的消息应类似于以下JSON数据:

{
  "registration_ids" => "some_target_device_id",
  "data": {
      "title": "My title",
      "message": "This is the message!",
  }
}

10-08 14:57