如何向APNS发送富推送

5

我可以正常发送普通推送,但不知道如何发送“富”推送。我已经阅读了苹果的“本地和推送通知编程指南”5次,但没有提到发送除警报、徽章和声音之外的任何内容。我在开发者中心找不到有关富推送的任何文档。

我一定是在寻找错误的东西,也许其他人已经走过这条路了?


"Rich Push" 是什么意思? - Francescu
将HTML5作为消息正文发送。我在网上找不到任何相关信息,但我工作的地方的每个人似乎都认为可以通过推送发送视频或图像。他们称这种技术为“富推送”。 - chriscoder
1
他们在和你开玩笑。推送通知只是短消息,不是所谓的富媒体推送。只需查看您的通知中心即可了解情况。如果这不是一个玩笑,他们可能会谈论应用程序启动后显示的消息。您可以将URL与推送相关联,然后在打开它时显示任何HTML5消息,但仅限于应用内。 - Francescu
谢谢你,Francescu!现在我完全明白了,这很有道理。所以我应该传递一个自定义参数来指定应用程序在点击推送消息时应显示的URL。我如何将您的评论标记为解决方案? - chriscoder
我将下面的内容复制粘贴作为答案,以便您可以接受它 ;) 祝您在APNS和应用程序方面好运! - Francescu
我同意Francescu的观点,推送通知只是短信,无法直接发送图片。但可以通过在消息载荷中发送图像或HTML文件的URL,然后让应用程序查看通知载荷中的URL,从该URL获取数据并在应用程序中显示它们。也许这就是所谓的“富推送”?有关更多详细信息,请参见下面的回答。 - AliSoftware
1个回答

2
您不会直接在通知中发送整个 HTML 内容,但是您可以发送“富推送”,也就是说,您可以在推送通知中发送其他数据,而不仅仅是 alertbadgesound:您可以发送任何其他键,只要将它们放在 JSON 的根目录下(即在 aps 条目之外)。

唯一的限制是您受到 255 个字符的限制,因此它并不适合提供大型 HTML 文件之类的内容。只是为了提供您选择的其他键,例如 URL,用于描述您想要显示的对象的内部 ID 等字段。

有关所有信息,请参阅本地和推送通知编程指南 中的“JSON 负载示例”一节,其中添加了像 "acme1""acme2" 这样的虚拟参数。

所以,对于您的情况,您的推送通知负载可能如下所示:
{
    "aps" : { "alert" : "Message received from Bob" },
    "rich-text-url" : "http://yourserver/message/1234"
    "id-of-object-to-show" : 456
}

唯一需要记住的是255个字符的限制。
(注:显然,我上面的示例中的描述性键仅用于解释,但通常人们会选择更短的键名,例如urlid以缩短总负载)


https://developer.apple.com/library/content/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/ - VPDD

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接