Answers:
在一种情况下,强制退出可以为iOS带来好处,其收益超过清理进程,重新启动进程以及清除所有缓存/打开的文件所需的更多处理成本。
不利的是,应用程序不会在后台运行-因此,一旦您切换到新应用程序或跳板/图标列表/锁定屏幕-iOS已经停止/暂停/刷新了该应用程序的所有文件系统活动。
它向冻结的应用程序发出信号,表明它需要从头开始完全重新初始化自身-忽略任何保存的状态或缓存的结果。它以崩溃报告的形式向Apple发出信号(并有选择地向开发人员发出信号),从而在用户“杀死”应用程序时准确地将其记录在代码中的某些痕迹。
可以将其视为手术-短期内您正在遭受明显的伤害-除非您确定需要进行手术,否则不要承受性能下降并强行放弃。
最近,这个主题再次成为热门话题。我坚信强制在iOS设备上退出应用程序是没有用的。仅当应用崩溃时重新启动它们才有用。这里更多信息。
9to5Mac:
在某些圈子里,人们长期以来一直认为,使用iOS的多任务处理功能强制退出应用程序可以帮助节省iPhone的电池寿命,或在智能手机变慢时提高软件的速度。
在本周早些时候,一位iPhone用户决定将电子邮件发送给苹果首席执行官蒂姆·库克(Tim Cook),以一劳永逸地解决,而得到了苹果软件工程高级副总裁Craig Federighi的答复(通过9to5Mac)。
以下是苹果公司自己有关何时使用此功能的建议,摘自关于强制关闭应用程序的官方支持文档:
双击“主页”按钮时,将显示您最近使用的应用程序。这些应用程序尚未打开,但处于待机模式,可帮助您导航和执行多任务。您应强制应用仅在无响应时关闭。
MacDailyNews引用了史蒂夫·乔布斯(Steve Jobs)的2010年电子邮件:
只需按照设计使用[iOS multitasking],您会很高兴的。无需退出应用程序。
万一您不相信苹果公司的软件高级副总裁,苹果公司自己的官方支持文档或史蒂夫·乔布斯,以下是一些其他文章,指出这种习惯实际上对iPhone的电池寿命有害:
从理论上讲,是的。在后台运行的应用程序确实会消耗内存(它们的线程仍然存在,这就是为什么当您双击“主页”按钮时可以看到它们的列表),因此它们确实消耗了电池。
但实际上,并非如此。iOS在内存管理方面做得相当不错,并且在后台运行的应用仅消耗少量内存。并且,如果其他在前台运行的应用程序(正在运行且用户正在与之交互)需要更多内存,则iOS系统可能会终止后台应用程序并清除内存。有时强制关闭某个应用程序似乎可以节省内存/电池寿命的原因是,某些应用程序可能要求运行长时间运行的任务,甚至在后台运行,例如出于后台获取,定期同步数据,等等(请注意,并非每个应用程序都这样做)。但是您可以通过在“设置”->“常规”中配置“后台应用刷新”来禁用这些功能。
因此,总而言之,对于在后台运行不多的应用程序,强制关闭它不会产生明显的收益。
Suspended
后台后立即进入调用状态,并且“在挂起时,应用程序保留在内存中,但不执行任何代码”。除非被iOS终止,否则应用程序的过程仍然存在。如果您具有XCode(适用于iOS应用的开发人员工具),则实际上可以使用Debug-> Attach to Process并查看电话上的进程列表,即使前台没有任何运行
applicationDidEnterBackground:
方法返回后不久,系统会为应用程序的窗口拍摄快照。类似地,当唤醒应用程序以执行后台任务时,系统可能会拍摄新的快照以反映任何相关更改例如,当唤醒应用程序以处理下载的项目时,系统会拍摄一个新的快照,以便可以反映由于合并项目而引起的任何更改。系统在多任务UI中使用这些快照图像来显示您的状态应用”。这就是我所指的。