【问题标题】:Swift - Push Notification JSON formatSwift - 推送通知 JSON 格式
【发布时间】:2016-08-31 10:26:38
【问题描述】:

请让我在这里询问推送通知问题。

我们的服务器以这样的 JSON 格式发送数据

{
"notification":

    {
    "body”:”Test Push Notification (42)”,
    "node":"1233837”,
    "content-available":"1"
    },
    "priority":"high"

}

向我们的应用发送推送通知的过程是

  • 我们从我们的服务器向 GCM 发送了通知
  • 从 GCM 发送到 APNS。

但是当我们在我们的应用程序中收到推送通知时,格式完全改变了(如附图所示)。

如果您以前遇到过这种问题,请您分享一下如何解决它,好吗?

或者有什么方法可以改变 GCM 以获得正常的 JSON 格式?

【问题讨论】:

  • 尝试向有效负载添加更多密钥,如"data":{ "key" : "value" } 并检查输出
  • 我们不能使用当前格式吗?
  • 当前格式没问题。苹果希望通知有效负载具有带有警报的 aps 键,以在主屏幕上显示警报。对于自定义数据——尝试使用自定义键。我认为必须在文档中更好地解释这一点。
  • 我们之前使用“aps”作为密钥,但我不知道为什么使用名为“aps”的密钥,我们的服务器无法发送通知。只有使用名为“通知”的键,我才会在我们的应用程序中收到推送通知。多么奇怪! :(

标签: ios swift push-notification google-cloud-messaging apple-push-notifications


【解决方案1】:

尝试下一个向 GCM 发送通知的格式:

{ "notification": { "body”:”Test Push Notification (42)”, "node":"1233837” }, "priority":10, "content-available":true }

从 APNS 你的应用会得到一些这样的东西

{
  aps:{
       alert:{
                   *bla bla bla*
        }, 
        *bla bla bla*
 }}

只需在didReceiveRemoteNotification: 方法中解析它。

【讨论】:

  • 感谢您的回答
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-05-06
  • 1970-01-01
  • 2017-10-10
  • 1970-01-01
  • 2014-12-04
  • 1970-01-01
  • 2013-03-27
相关资源
最近更新 更多