代码之家  ›  专栏  ›  技术社区  ›  mfaani

在应用程序进入挂起状态后点击应用程序图标后有关应用程序状态的问题

  •  0
  • mfaani  · 技术社区  · 7 年前

    我正在把一个应用程序放到后台。

    1. 在后台执行任何操作以保持应用程序处于活动状态,然后应用程序在5秒内进入挂起状态。对吗?

    2. 如果我点击应用程序图标会发生什么?这不应该触发 didFinishLaunch didbecomeActive willenterforeground 通知。我不会再接到任何回电了。对吗?

    3. 假设没有重新启动手机,第2点是正确的,即使有几个小时之间我点击回家,然后点击回应用程序图标。对吗?它是否也能保持设备重启而不是强制重启?
    4. 唯一一次我不会被带回到屏幕我是在(打回家之前)是如果设备收到内存警告,我的应用程序是冲出暂停状态。此时点击应用程序图标将导致 . 对吗?

    (我问这一切是因为 有时 将应用程序置于后台并再次点击应用程序图标(例如10分钟后),应用程序将进入启动阶段。大多数情况下,它只是回到上一个屏幕)

    我已经看过了 Will ios terminate the app running in background after a specific time? 但这并不是我想要的所有方面。

    1 回复  |  直到 7 年前
        1
  •  1
  •   matt    7 年前

    它只会把我带回到我所处的最后一个屏幕,也会触发did becomeactive&将输入前台通知。

    我不会再接到任何回电了。

    不一定是真的。例如,如果你被一个本地通知召集到前线,你也会得到一个关于这个的事件。

    假设没有重新启动手机,第2点是正确的,即使有几个小时之间我点击回家,然后点击回应用程序图标。

    不一定。应用程序很可能在后台以静默方式终止。

    绝对不是。当设备关闭时,应用程序如何运行?关闭应用程序会终止每个应用程序。

    我问所有这些是因为有时在把应用程序放在后台,然后再次点击应用程序图标(例如10分钟后),应用程序正在经历它的启动阶段

    这不是问题 . watchdog进程不断地对暂停的应用程序进行梳理,寻找占用过多内存的应用程序,以便其他应用程序可以运行。如果你的是他们中的一员,你一定不要感到惊讶。

    你可以从零开始回到前线,也可以从停摆中复活;这是iOS应用生活中最基本的事实!你只需要接受它。

    但是你可以做很多事情来减少你被解雇的机会。放弃内存消耗对象作为你的背景是第一个名单。