在IOS9上,如果iPhone处于省电模式,则回叫
application:didReceiveRemoteNotification:fetchCompletionHandler:
未被调用。相反,我在控制台中收到以下警告
High Priority Push: com.your-company.app - Battery Saver Mode Enabled
使用PushKit时似乎确实有用。
是否有其他人遇到此行为?
还有其他解决方法吗?
答案 0 :(得分:2)
不幸的是,我相信这是预期的行为。有关推送通知的文档不断对冲其可靠性。 E.g:
重要提示:发送通知是“尽力而为”,而不是 保证。它不是为了向您的应用提供数据,而只是为了 通知用户有可用的新数据
在很多条件下,通知将无法传递或传递将被延迟,有时Apple会合并多个通知,并且只会传送最后一个通知。
PushKit是需要VOIP功能的应用程序的更可靠的替代品,其中使用通知来响铃用户以获得更好的可靠性。这就是为什么它仍然在电池节省模式下工作。
就解决方法而言,它实际上取决于您要完成的任务。一种可能性是您可以在应用程序运行时安排本地通知,这些通知比标准远程通知更可靠。