ios - iOS 7 何时关闭我的应用程序?
<p><p>我有一个在后台运行的应用程序。调用此应用程序以便能够更新,然后进入休眠状态。</p>
<p>由于某种原因,它在几个小时后停止工作。</p>
<p>我有一些理论,但我找不到关于它们的文档。</p>
<ol>
<li>当内存不足时,iOS 会关闭应用程序。
<ul>
<li>有人知道这个过程中使用的顺序吗?</li>
<li>它是选择运行时间更长、占用内存更多的应用程序,还是只是随机关闭应用程序以获得所需的内存?</li>
</ul></li>
<li>应用程序在后台运行是否有最大时间限制?</li>
<li><code>NSTimer</code> 是否有最大重复次数?</li>
<li>如果电池电量降低以节省电量,iOS 是否会在后台关闭应用程序?</li>
</ol>
<p>如果有人能回答这些问题,或提供一些有关这些问题的信息,那就太好了。 </p>
<p>理论建立在客户报告的基础上。</p></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>逐点回答(以简单的方式):</p>
<ol>
<li>在后台运行的应用程序进入内存不足状态应该被操作系统杀死,但它的应用程序委托(delegate)应该收到 <code>applicationWillTerminate</code> 消息。 </li>
<li>官方没有规定后台运行应用的时间限制。</li>
<li><code>NSTimer</code> 只能是两种中的一种:重复或不重复。您可以引用<a href="https://developer.apple.com/library/mac/documentation/Cocoa/Reference/Foundation/Classes/NSTimer_Class/Reference/NSTimer.html" rel="noreferrer noopener nofollow">NSTimer class reference documentation</a>为这方面的证据。</li>
<li>如果我没记错的话,根据 Apple 的政策,该应用无法做到这一点。如果设备电池电量不足,则不得干预打开的应用程序以延长电池使用时间。</li>
</ol>
<p>有关应用程序后台运行模式的完整说明,请参阅 Apple 开发者文档 <a href="https://developer.apple.com/library/ios/documentation/iphone/conceptual/iphoneosprogrammingguide/ManagingYourApplicationsFlow/ManagingYourApplicationsFlow.html#//apple_ref/doc/uid/TP40007072-CH4-SW3" rel="noreferrer noopener nofollow">at this link</a> . </p>
<p>如果您的应用必须负责任地在后台运行,这是了解多任务处理和正确策略的良好起点。</p></p>
<p style="font-size: 20px;">关于ios - iOS 7 何时关闭我的应用程序?,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/24534758/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/24534758/
</a>
</p>
页:
[1]