直接上代码测试:
public class MainActivity extends AppCompatActivity {
private final static String TAG = "TAG";
@Override
protected void attachBaseContext(Context newBase) {
super.attachBaseContext(newBase);
Log.d(TAG, "attachBaseContext: ");
}
@Override
public void onContentChanged() {
super.onContentChanged();
Log.d(TAG, "onContentChanged: ");
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Log.d(TAG, "onCreate: ");
}
@Override
protected void onPostCreate(@Nullable Bundle savedInstanceState) {
super.onPostCreate(savedInstanceState);
Log.d(TAG, "onPostCreate: ");
}
@Override
protected void onRestart() {
super.onRestart();
Log.d(TAG, "onRestart: ");
}
@Override
protected void onStart() {
super.onStart();
Log.d(TAG, "onStart: ");
}
@Override
protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);
Log.d(TAG, "onNewIntent: ");
}
@Override
protected void onPostResume() {
super.onPostResume();
Log.d(TAG, "onPostResume: ");
}
@Override
protected void onResume() {
super.onResume();
Log.d(TAG, "onResume: ");
}
@Override
protected void onPause() {
super.onPause();
Log.d(TAG, "onPause: ");
}
@Override
protected void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
Log.d(TAG, "onSaveInstanceState: ");
outState.putBoolean("FLAG", true);
}
@Override
protected void onRestoreInstanceState(@NonNull Bundle savedInstanceState) {
super.onRestoreInstanceState(savedInstanceState);
boolean FLAG = savedInstanceState.getBoolean("FLAG");
if (FLAG) {
Log.d(TAG, "onRestoreInstanceState: " + FLAG);
}
}
@Override
protected void onStop() {
super.onStop();
Log.d(TAG, "onStop: ");
}
@Override
protected void onDestroy() {
super.onDestroy();
Log.d(TAG, "onDestroy: ");
}
}
直接运行之后,我们看看Logcat 中的打印:
D/TAG: attachBaseContext:
D/TAG: onContentChanged:
D/TAG: onCreate:
D/TAG: onStart:
D/TAG: onPostCreate:
D/TAG: onResume:
D/TAG: onPostResume:
--- 之后我们旋转屏幕,让它发生`configChanges`,在来观察:
D/TAG: onPause:
D/TAG: onSaveInstanceState:
D/TAG: onStop:
D/TAG: onDestroy:
D/TAG: attachBaseContext:
D/TAG: onContentChanged:
D/TAG: onCreate:
D/TAG: onStart:
D/TAG: onRestoreInstanceState: true
D/TAG: onPostCreate:
D/TAG: onResume:
D/TAG: onPostResume:
|