Swift - 推送通知 JSON 格式

Posted

技术标签:

【中文标题】Swift - 推送通知 JSON 格式【英文标题】:Swift - Push Notification JSON format 【发布时间】: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”的密钥,我们的服务器无法发送通知。只有使用名为“通知”的键,我才会在我们的应用程序中收到推送通知。多么奇怪! :( 【参考方案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: 方法中解析它。

【讨论】:

感谢您的回答

以上是关于Swift - 推送通知 JSON 格式的主要内容,如果未能解决你的问题,请参考以下文章

如何处理未打开的推送通知(iOS、Swift)

使用firebase问题推送通知(ios,swift 4)[关闭]

无法在 iOS 中解析推送通知 json?

无法在 iOS8 上设置交互式推送通知

通过 Swift 关闭推送通知功能

ios swift使用啥推送通知? [关闭]