【发布时间】:2014-01-08 02:14:04
【问题描述】:
我有一个注册后台模式远程通知的 iOS7 应用程序:
<key>UIBackgroundModes</key>
<array>
<string>remote-notification</string>
</array>
它在重新启动之前工作正常,并且应用程序在后台收到此事件:
-(void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler
但看起来重启后我不再收到此事件,直到我手动启动应用程序。
所以,问题是:当 iOS7 收到我的应用程序的静默推送通知时,我可以让 iOS7 在重新启动后在后台运行我的应用程序吗? 我的推送通知没有“alert”字段,只有“contentAvailable”——这可能是一个原因吗? 我已经看到像 whatsapp 这样的应用程序能够在重启后立即接收和显示推送通知,因此它看起来至少对于“警报”类型的通知是可行的。
我知道我可以在重启后的某个时候使用重要的位置监控来重启应用程序,但我想避免一直在工具栏上显示位置图标。后台获取模式可以帮助解决这个问题吗? 有没有统计数据,后台获取模式的应用重启后执行速度有多快?
【问题讨论】:
标签: ios push-notification apple-push-notifications reboot