在 android 代码库中,activity 生命周期定义在哪里?

In the android code base, where is the activity lifecycle defined?

我在 developer.android.com 下看到 this 文档,描述了 Activity 生命周期。但是,我试图将描述与实际的 android 代码相匹配,位于 cs.android.com,其中 activity 生命周期实际定义。

Activity.java 的代码搜索中查看,我看到,例如,定义了 onCreate 方法。但是我一直没能找到这实际上是 在生命周期中调用 的地方。也许我搜索它的引用时列出了它,但是有成千上万的引用,包括很多覆盖,我还没有找到它被调用的地方定义它在 activity 生命周期中的位置。

我在哪里可以找到它?

将下面的代码复制到您的 activity 和 运行 它,同时打开 logcat 。日志消息将显示 activity 循环中的哪个方法有被称为 .

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    Log.v("MainActivity", "Oncreat");
}

@Override
protected void onStart() {
    super.onStart();
    Log.v("MainActivity", "onStart");
}

@Override
protected void onResume() {
    super.onResume();
    Log.v("MainActivity", "onResume");
}

@Override
protected void onPause() {
    super.onPause();
    Log.v("MainActivity", "onPause");
}

@Override
protected void onStop() {
    super.onStop();
    Log.v("MainActivity", "onStop");
}

@Override
protected void onRestart() {
    super.onRestart();

    Log.v("MainActivity", "OnRestart");

}

@Override
protected void onDestroy() {
    super.onDestroy();
    Log.v("MainActivity", "onDestroy");
}

您也可以查看此 link 了解更多详情。