生命周期方法是否被禁止?

时间:2019-07-19 21:22:10

标签: android android-activity android-lifecycle

我知道这个地方充满了有关androids组件生命周期的问题。

我想知道在不同活动中生命周期事件的顺序是否可以保证。

用一个例子更容易理解。假设A和B是活动,让我们假设我这样做:

a.finish();
a.startActivity(new Intent(a,B.class));

Android scheculer是否保证A.onStop()A.onDestroy()B.onCreate()B.onStart()之前被调用?

我知道调用finish()之后不会立即调用这些方法;也没有startActivity();,但我想了解顺序...是否可以确保这些方法将被调用的顺序?

1 个答案:

答案 0 :(得分:1)

无法保证两个活动之间的呼叫顺序。特别是onDestroy调用。 start / stop / pause / resume根据其含义有一些隐式排序(pause意味着您不再是前台活动,stop意味着您完全不在屏幕上,因此在B的onStart之前调用stop没有意义。 ,否则可能不正确)。但是onDestroy绝对可以延迟到对系统方便之前,除了在A的onStop之后没有其他硬命令。