Anonim

你双击主页按钮并将你的应用滑出屏幕顶部:好主意还是坏主意?最近有些人对关闭 iPhone 和 iPad 应用程序是有益还是有害感到困惑,尤其是在电池寿命方面。我一直说这是一个好主意:关闭你的应用程序是我关于如何节省 iPhone 电池寿命的文章的第 4 条提示。

在本文中,我将解释为什么关闭应用程序有助于延长iPhone 电池寿命,提供Apple Developer 文档的摘录 以支持这一点,并包括一些来自真实世界测试的示例 我确实使用苹果开发者工具和我的 iPhone。

当我写作时,我希望我提供的信息对每个人都有帮助并且易于理解。我通常不会太技术化,因为我在 Apple Store 的工作经验告诉我,当我开始谈论流程时,人们的眼睛开始呆滞, CPU 时间,以及应用程序生命周期。

在本文中,我们将更深入地探讨应用程序的工作原理,以便您可以就是否关闭做出明智的决定您的 iPhone 或 iPad 应用程序适合您。首先,我们将讨论 App Life Cycle ,它描述了从您打开应用程序到它关闭并从内存中清除的那一刻发生的事情。

应用程序生命周期

组成应用程序生命周期的应用程序状态有五种。你 iPhone 上的每个应用程序现在都处于这些状态之一,并且大多数都处于未运行状态。苹果开发者文档对每一个都有解释:

要点

  • 当您按主页按钮离开应用程序时,它会进入Background​​ 或Suspended状态。
  • 当您双击主页按钮并将应用程序从屏幕顶部滑出时,该应用程序将关闭并进入未运行状态。
  • 应用程序状态也称为模式。
  • 处于后台模式的应用程序仍在运行并耗尽电池电量,但处于暂停模式的应用程序不要。

向上滑动应用程序:关闭或强制退出?

为了消除一些术语上的混淆,当您双击 iPhone 上的主页按钮并将应用程序从屏幕顶部滑出时,您将关闭该应用程序。强制退出应用程序是一个不同的过程,我计划在以后的文章中写。

Apple关于iOS多任务处理的支持文章证实了这一点:

我们为什么要关闭我们的应用程序?

在我关于如何节省iPhone电池寿命的文章中,我总是这样说:

简而言之,我建议关闭您的应用程序的主要原因是防止您的电池在应用程序未进入后台状态或挂起状态时耗尽在我关于为什么iPhone会变热的文章中,我把你iPhone的CPU(中央处理器;操作的大脑)比作汽车引擎:

如果长时间踩金属踏板,汽车发动机会过热并消耗大量汽油。如果 iPhone 的 CPU 加速到 100% 的时间过长,iPhone 会过热并且电池会快速耗尽。

所有应用程序都使用您iPhone 上的CPU。通常,应用程序在打开时会使用大量 CPU 功率一两秒钟,然后在您使用该应用程序时节流回低功率模式。当应用程序崩溃时,iPhone 的 CPU 通常会卡在 100%。 当您关闭应用程序时,请确保不会发生这种情况,因为应用程序将返回到未运行状态。

关闭应用程序是否有害?

绝对不是。 与Mac 或PC 上的许多程序不同,iPhone 应用程序不会等到您点击“保存”后才开始他们保存您的数据。 Apple 的开发者文档强调了应用准备好随时终止的重要性:

关闭应用程序时,也可以:

反对关闭iPhone和iPad应用程序的争论

有人反对关闭你的应用程序,这是基于事实的。然而,它是基于对事实非常狭隘的看法。这是它的长短:

  • 从非运行状态打开应用程序比从后台或挂起状态恢复应用程序更耗电。 这是绝对正确的
  • Apple 投入了大量精力来确保iPhone 操作系统有效地管理内存,从而最大限度地减少处于后台或挂起状态时的电池应用程序使用量。 这也是对的
  • 如果你关闭你的应用程序,你就是在浪费电池寿命,因为从头开始打开iPhone应用程序比操作系统从后台和挂起状态恢复它们所消耗的电量更多。 Sometimes true.

让我们看看数字

开发者经常用CPU时间来衡量iPhone完成任务所花费的精力,因为它可以直接影响电池寿命。我使用了一个名为Instruments 的Apple 开发者工具来衡量几个应用程序对我iPhone CPU 的影响。

我们以Facebook应用为例:

  • 从未运行状态打开Facebook应用程序使用大约3.3秒的CPU时间。
  • 关闭任何应用程序会将其从内存中擦除,将其返回到未运行状态,并且几乎不使用 CPU 时间——比方说 0.1 秒。
  • 按下主页按钮将Facebook应用程序发送到后台状态并使用大约0.6秒的CPU时间。
  • 从后台状态恢复Facebook应用程序使用大约0.3秒的CPU时间。

因此,如果你从非运行状态(3.3)打开Facebook应用,关闭它(.1),再从非运行状态(3.3)打开它,它使用了6.7秒CPU 时间。如果你从非运行状态打开Facebook应用程序,按home键将其发送到后台状态(.6),并从后台状态恢复(.3),it only使用 4.1 秒的 CPU 时间。

哇!在这种情况下,关闭 Facebook 应用程序并再次重新打开它会多使用 2.6 秒的 CPU 时间。 打开Facebook应用程序,您的电量减少了大约39%!

最终获胜者是…

没那么快!我们需要看大局以获得更准确的情况评估。

正确看待电力使用

39% 听起来很多,而且它确实是——直到你意识到与它所需要的功率相比,我们所说的功率是多么微不足道使用你的 iPhone。 反对关闭你的应用程序的论点听起来很棒,直到你意识到它建立在一个无关紧要的统计数据之上。

正如我们所讨论的,如果您让 Facebook 应用程序保持打开状态而不是关闭它,您将节省 2.6 秒的 CPU 时间。 但是Facebook应用程序在使用过程中的耗电量是多少?

我在新闻源中滚动了 10 秒并使用了 10 秒的 CPU 时间,或者我每秒使用该应用程序的 CPU 时间为 1 秒。在使用Facebook 应用程序5 分钟后,我将使用300 秒的CPU 时间。

换句话说,我必须打开和关闭Facebook 应用程序115 次才能对电池寿命产生与使用Facebook 应用程序5 分钟一样大的影响。什么意思是这样的:

不要根据微不足道的统计数据来决定是否关闭您的应用程序。根据最适合您的 iPhone 的方式做出决定。

但这并不是关闭应用程序是个好主意的唯一原因。继续…

后台模式下缓慢而稳定的CPU燃烧

当应用程序进入后台模式时,即使您的iPhone 在口袋中处于睡眠状态,它也会继续使用电池电量。我对 Facebook 应用程序的测试证实这种情况会发生即使后台应用程序刷新已关闭。

在我关闭Facebook 应用程序后,它继续使用CPU,即使iPhone 已关闭。在一分钟的过程中,它使用了 0.9 秒的额外 CPU 时间。三分钟后,让Facebook应用程序保持打开状态比我们立即关闭它会消耗更多电量。

故事的寓意是:如果您每隔几分钟就使用一个应用程序,请不要在每次使用时都将其关闭。如果您不常使用它,最好关闭该应用程序。

公平地说,许多应用程序直接从后台模式进入暂停模式,而在暂停模式下,应用程序根本不使用任何电源。但是,无法知道哪些应用程序处于后台模式,因此一个好的经验法则是将它们全部关闭。请记住,与使用该应用程序所需的电量相比,从头开始打开应用程序所需的电量相形见绌。

软件问题一直在发生

iPhone 应用程序崩溃的频率比您想象的要高。大多数软件崩溃都很轻微,不会造成任何明显的副作用。你之前可能已经注意到了:

你正在使用一个应用程序,突然,屏幕闪烁,你最终回到主屏幕。 这是应用程序崩溃时发生的情况。

您还可以在Settings -> Privacy -> Diagnostics & Usage -> Diagnostic and Usage Data.查看崩溃日志。

大多数软件崩溃都无需担心,尤其是当您关闭应用程序时。很多时候,出现软件问题的应用程序只需要从头开始。

一个常见软件问题的例子

现在是午餐时间,您发现您的 iPhone 电池电量已耗尽至 60%。早餐时,你查了邮件,听了音乐,叹了口气银行账户余额,看了TED演讲,翻了翻脸书,发了一条推特,查了昨晚篮球比赛的比分。

修复崩溃的应用

您记得应用程序崩溃会导致电池快速耗尽,关闭应用程序可以解决问题,但您不知道是哪个应用程序导致了问题。在这种情况下(这是真实的),TED 应用程序正在消耗 CPU,即使我没有使用我的 iPhone。您可以通过以下两种方式之一解决问题:

  1. 广告
  2. 媒体提及
  3. 网站地图
  4. 隐私政策
  5. 接触
  6. Español
关闭iPhone 应用程序是个坏主意吗?不