终止后,通过推送通知启动应用程序

我想知道是否有办法唤醒用户在ios8-9上终止的应用程序。 终止后,我的意思是双击主页按钮并向上滑动。

是否有可能通过发送静默推送通知来启动应用程序,以便didreceiveremotenotification触发了重新启动,并给了我一些运行时间?

我注意到我的用户公平分享了我的应用程序。 由于我非常依赖后台提取,这是一个问题。 我的想法是发送静默推送通知以在后台启动应用程序并触发后台提取。

简答:不,这是不可能的。

详情:

当服务器上有任何新内容时,您将向您的应用程序发送远程通知以通知相关内容。 (远程通知实际上只是设置了content-available标志的普通推送通知)

当应用程序收到此远程通知时,它会调用以下方法:

 - (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult result))handler 

在这种方法的文档中,它写得很清楚:

但是,如果用户强行退出,系统不会自动启动您的应用程序。 在这种情况下,用户必须重新启动应用程序或重新启动设备,然后系统才会再次尝试自动启动应用程序。

参考:

  • objc.io:远程通知
  • 有关应用程序的Apple Doc:didReceiveRemoteNotification:fetchCompletionHandler: