即使在睡眠或重启后,也会在后台持续运行IOS应用程序

时间:2015-01-20 20:35:22

标签: ios iphone background restart reboot

我需要在后台持续运行iPhone应用程序,以便它可以响应CTCallCenter和CTTelephonyCenter抛出的事件。我一直在使用私有API,但无法越狱手机。通过使用位置和VOIP背景模式,我已经能够在超过IOS 10分钟限制的后台运行。只要iPhone保持活动状态,一切运行良好,但是,当系统长时间睡眠或重新启动时,应用程序不再接收CTCallCenter和CTTelephonyCenter抛出的事件,并停止定期记录其后台任务。然而,它可以接收位置事件,此时它会运行一段时间,然后再次暂停。

即使在睡眠或重启后,如何确保应用始终保持活动的后台状态?

1 个答案:

答案 0 :(得分:3)

我已经能够在睡眠后保持应用程序运行而不会越狱手机或使用私有API。我怀疑它可能,毕竟我已经看过其他应用程序了。

让应用程序保持清醒的关键是在无限循环中播放空背景音频。需要的权限是VOIP和音频。即使手机睡了几个小时,背景循环也会继续执行。

本文的第二部分介绍了这种方法: http://hayageek.com/ios-long-running-background-task/

以下是iPhone应用示例的链接: http://hayageek.s3.amazonaws.com/downloads/ios/LongRunningBackgroundTask.zip

编辑:为了降低电池使用量,可以仅在applicationDidEnterBackground中以短暂间隔运行音频,这将重置UIApplication.sharedApplication()的值.backgroundTimeRemaining