【发布时间】:2015-09-01 08:51:44
【问题描述】:
我希望能够使用推送通知,但不希望从服务器获取数据。相反,我希望它充当我的天气应用程序的更新方法,以便即使在应用程序关闭时也能获取新数据。是否可以伪造推送通知?
【问题讨论】:
标签: ios xcode swift push-notification weather
我希望能够使用推送通知,但不希望从服务器获取数据。相反,我希望它充当我的天气应用程序的更新方法,以便即使在应用程序关闭时也能获取新数据。是否可以伪造推送通知?
【问题讨论】:
标签: ios xcode swift push-notification weather
将以下代码添加到您的 Info.plist 文件中:
<key>UIBackgroundModes</key>
<array>
<string>remote-notification</string>
</array>
并在远程推送的 JSON 负载中添加以下标志
content-available: 1
所以它看起来像这样:
aps: {
(…)
content-available: 1,
(…)
}
带有此标志的推送通知将静音(用户不会看到通知),iOS 将给您的应用大约 30 秒的时间来下载新内容/自行更新。它专为您的用例而设计。
【讨论】:
如果通知不包含任何文本,您可以向用户发送未显示的通知。这些不是“假”通知,而是通知。
但应用程序只有在启动时才会收到它们(并且如果用户允许通知)。 另一个问题是通知中的有效负载大小受到限制,因此您无法使用它对您的应用进行完整更新。
通常的情况是通知用于通知客户他需要更新,并最终给出新内容的“摘要”,以便向用户提供快速反馈。
【讨论】: