0

如果有可能在收到通知时启动应用程序(不点击通知并且应用程序已关闭)?或者如果应用程序关闭,是否有可能在后台做一些工作?

4

2 回答 2

1

是的,可以使用 pushkit(静默推送通知)。

当您的应用程序处于终止状态时,这也有效。

收到 puskit 有效负载后,您可以使用声音文件安排本地通知。

直到声音文件播放,您的应用程序将在后台处于活动状态,您可以处理您的代码。(声音文件最长允许 30 秒,因此您最多只能执行 30 秒的代码)

您需要整合以下内容。

  • Pushkit ios代码
  • 服务器端的静默推送通知代码
  • iOS 和服务器端代码所需的证书和规定

注意 - 您的应用程序必须基于 voip 或在获得 Apple 事先许可的特定类别中。

参考 - https://github.com/hasyapanchasara/PushKit_SilentPushNotification

于 2017-06-20T07:36:09.400 回答
0

您应该将content-available密钥添加到您的有效负载中,其值为1.

根据RemoteNotifications 编程 content-available定义是

为该键提供值 1 以指示有新内容可用。包含此键和值意味着当您的应用在后台启动或恢复时,会调用 application:didReceiveRemoteNotification:fetchCompletionHandler:。

(报亭应用程序保证能够在每 24 小时窗口内收到至少一次使用此键的推送。)

于 2017-06-20T07:14:33.573 回答