这个问题似乎是这个论坛上其他几个问题的本质。我相信活动的iPhone应用程序有可能继续运行,特别是在进入非活动状态后继续接收计时器回调(通过屏幕锁定中的空闲计时器,或者通过用户按下硬件锁定按钮)。
该文档特别指出,当应用程序处于非活动状态时,它正在执行,但不会分派传入事件(我没有给出链接,因为我对 NDA 很紧张 - 我应该对此放松吗?整篇文章是否违规?sigh).
另外,用户“Ambr Str”的两个答案直接指出可以继续接收计时器回调,并且他提供了一段代码来实现它(我无法链接到此,因为我是新用户,抱歉 - 搜索问题:“当 iPhone 进入待机模式时,iPhone 应用程序会发生什么情况?”以找到答案)。
我尝试按照他的建议创建回调,但是一旦我的应用程序变得不活动,回调就会停止触发。
我刚刚注意到,当 iPhone 插入时,如果应用程序变得不活动(由于空闲超时或我按下睡眠按钮),回拨确实会继续发生 - 也许我应该让我的用户携带电池和他们一起打包;-)
这个问题在苹果论坛上有一个很好的答案。搜索“Timer”和“Eskimo”(提供答案的乐于助人的小伙子)。
简而言之,应用程序变为非活动状态后不久,手机确实会进入睡眠状态。防止这种情况的唯一方法是播放一些音频(或在后台应用程序中播放一些音频)。播放音频时,手机不会休眠,您的应用程序将继续运行。
建议播放保持清醒的音频是一种黑客行为,如果可能的话,您不应该这样做。我认为在我的应用程序(执行穿插有静默期的音频播放)中,该方法即使不理想,也是有效的!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)