iOS 10 个远程通知,当应用程序不可用时 运行
iOS 10 Remote Notifications When App Not Running
当我收到远程通知时,我更新了保存到 UserDefaults 的计数器,并且还显示了本地通知。当应用程序处于前台、后台和暂停状态时,一切都按预期工作 Ref。当应用程序处于 Not 运行 状态时,我的计数器不会更新,也不会显示我的本地通知。
据我了解,当应用程序完全关闭时,我应该能够接收和处理远程通知。一些在线文章声称,当远程通知在 Not 运行 状态下到达时,应该调用 application:didFinishLaunchingWithOptions: 然后调用 application: didReceiveRemoteNotification:fetchCompletionHandler: 但在我的情况下它不是。
非运行状态下是否可以接收远程通知?
如果您的应用程序是 VoIP 应用程序并且您正在通过 PushKit 使用 VoIP 推送,那么推送通知将从终止状态启动您的应用程序以传递通知。如果您使用的是标准推送通知,那么您的应用程序在终止时将不会收到通知。您可以包含带有 'silent' 通知的警告文本,如果您的应用程序终止,将向用户显示该通知以提示他们启动您的应用程序。
首先,听起来您设置了静默通知。将 alert
数据添加到推送通知后(标题等信息,body 等。您可以在 here 上找到更多信息),它将开始显示在锁定屏幕上.
其次,如果您的应用程序处于 Not 运行 状态,则您的应用程序不可能从推送通知启动,无论是静默的还是其他方式。 The documentation on this 实际上是不正确的,因为它声明只有在用户退出应用程序时应用程序才会启动。但是,这实际上也适用于 not-running 状态下的任何情况,例如,如果您的应用程序自 installation/rebooting 以来从未启动过,或者由于内存而退出(相当常见的情况 - iOS 根据需要清除最近 运行 没有的应用程序。
当应用程序后台时,您是否检查了此标记?
当我收到远程通知时,我更新了保存到 UserDefaults 的计数器,并且还显示了本地通知。当应用程序处于前台、后台和暂停状态时,一切都按预期工作 Ref。当应用程序处于 Not 运行 状态时,我的计数器不会更新,也不会显示我的本地通知。
据我了解,当应用程序完全关闭时,我应该能够接收和处理远程通知。一些在线文章声称,当远程通知在 Not 运行 状态下到达时,应该调用 application:didFinishLaunchingWithOptions: 然后调用 application: didReceiveRemoteNotification:fetchCompletionHandler: 但在我的情况下它不是。
非运行状态下是否可以接收远程通知?
如果您的应用程序是 VoIP 应用程序并且您正在通过 PushKit 使用 VoIP 推送,那么推送通知将从终止状态启动您的应用程序以传递通知。如果您使用的是标准推送通知,那么您的应用程序在终止时将不会收到通知。您可以包含带有 'silent' 通知的警告文本,如果您的应用程序终止,将向用户显示该通知以提示他们启动您的应用程序。
首先,听起来您设置了静默通知。将 alert
数据添加到推送通知后(标题等信息,body 等。您可以在 here 上找到更多信息),它将开始显示在锁定屏幕上.
其次,如果您的应用程序处于 Not 运行 状态,则您的应用程序不可能从推送通知启动,无论是静默的还是其他方式。 The documentation on this 实际上是不正确的,因为它声明只有在用户退出应用程序时应用程序才会启动。但是,这实际上也适用于 not-running 状态下的任何情况,例如,如果您的应用程序自 installation/rebooting 以来从未启动过,或者由于内存而退出(相当常见的情况 - iOS 根据需要清除最近 运行 没有的应用程序。
当应用程序后台时,您是否检查了此标记?