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

在Android中锁定设备屏幕时会发生什么

  •  0
  • bellotas  · 技术社区  · 4 年前

    我正在开发一个Android应用程序,它可以按照我的意愿运行。然而,当我锁定设备的屏幕时,一些进程停止执行。由于我并不真正理解在触发这种情况时Android的行为是什么,我想澄清一下这个话题。

    例如,当我切换设备的方向时,应用程序将执行新的生命周期。这将是Android在这种情况下的行为。我不明白的是,在前台或后台运行应用程序有什么不同,如果可能的话,还要了解在Android中运行进程的常见解决方案是什么,甚至更进一步,以及示例。

    0 回复  |  直到 4 年前
        1
  •  1
  •   GregHNZ    4 年前

    最近,在Android操作系统开发中,延长电池寿命受到了很多关注。一件受到严格限制的事情是,应用程序在后台时可以做什么。

    只要你的应用程序不是前台应用程序,它的行为就会受到严格限制。基本上,你的应用程序在后台运行时什么也不做,除非你已经完成了Android要求你在后台运行的一些具体事情。

    无论你的应用程序是因为你正在使用另一个应用程序而被置于后台,还是因为屏幕被锁定,这都适用。

    这里有一些关于后台执行的链接。据记忆,Oreo是我的应用程序中开始变得棘手的版本。

    https://developer.android.com/about/versions/oreo/background

    这可能是你现在需要做的最好的参考: https://developer.android.com/guide/background

    锁定屏幕后立即发生的是标准活动/片段生命周期onPause(),也可能是onStop()

    https://developer.android.com/guide/components/activities/activity-lifecycle#:~:text=to%20App%20Architecture.-,Activity-lifecycle%20concepts,activity%20enters%20a%20new%20state .