有没有办法在收到推送通知时唤醒iOS应用程序,即使它已被杀死

Ham*_*lik 9 background-process push-notification ios

我需要一种方法来接收静默推送通知,然后显示本地通知(所以我可以在显示给用户之前处理数据)有没有办法做到这一点? didReceiveNotification仅在前景时调用.我相信该应用程序是在接收推送时在后台启动的.但是,似乎没有解决应用程序何时被杀死的问题.

编辑我知道PushKit,但我的应用程序不是VOIP应用程序,它是一个IM应用程序.

Pau*_*w11 11

当您的应用处于前台或后台时,您可以使用该UIApplicationDelegate方法didReceiveRemoteNotification:接收"静音"推送,但如果您的应用被终止(强制退出切换台),则无法在您的应用中接收通知.通知有效负载(如果有)仍将显示给用户,使他们有机会从通知中启动您的应用.

此委托方法的文档指出:

此外,如果您启用了远程通知后台模式,系统将启动您的应用程序(或将其从暂停状态唤醒),并在远程通知到达时将其置于后台状态.但是,如果用户强行退出,系统不会自动启动您的应用.在这种情况下,用户必须重新启动应用程序或重新启动设备,然后系统才会再次尝试自动启动应用程序

  • 这不是我的陈述.它是Apple的 - 看到引用的文字.当然,通知将传递给设备,但不会传递给app delegate方法. (2认同)