当用户从最近关闭应用程序时调用onPause()

时间:2015-06-18 13:03:54

标签: android onpause activity-lifecycle

我读了很多关于活动生命周期但我找不到简单的答案。假设有人按切换应用硬件按钮。当应用切换到其他应用onPause()时,保证会被调用。同时按返回(关闭应用程序)或主页将调用onPause()

但这是问题所在。当我打开应用程序列表,我可以在应用程序之间切换时,只需按下按钮即可调用onPause()?我的意思是只是点击切换应用调用onPause()

我不清楚,文档没有描述这种情况。

编辑: 我错了,只说按钮点击后没有调用onPause()。对不起。

5 个答案:

答案 0 :(得分:2)

根据Activity page,将调用onPause()。当用户启动应用列表以开始刷掉应用时,位于前台的任何应用都会调用onPause()

答案 1 :(得分:0)

  

让我们假设某人正在按下切换应用硬件按钮。在有人从列表中选择不同的应用之前,不会调用onPause()

您确定当您按下按钮时,您可以选择其他应用在您选择应用之前不会拨打onPause()吗?我怀疑。

答案 2 :(得分:0)

应用程序最初会在应用程序列表出现之前调用onPause方法,但不会在刷掉它时(或者甚至在选择其他应用程序时)调用

答案 3 :(得分:0)

是onPause()总是在onDestroy()之前调用。它是这样的:onPaused() - > onStop() - >的onDestroy()

enter image description here

始终遵循箭头的方向。无论如何,这些方法都是连续的。像OnStop()这样的方法总是在onPause()之后和onDestroy()之前执行,无论情况如何。

答案 4 :(得分:0)

活动生命周期始终按文档中给出的顺序调用。含义onCreate> onStart> onResume> onPause> onStop> onDestroy。可能会有一些重复的调用,例如在onResumeonPause之间来回移动,因为活动到达前景并移动到后台,但它们始终按此顺序排列。这意味着,如果您确定要调用onDestroy,那么您可以确定已调用onPauseonStop