备注:Android系统版本5.1.1
Activity是一个可视化的用户界面,是Android程序与用户交互的窗口,能响应所有窗口事件,具备有控件,菜单等界面元素。Activity需要为了保持各个界面状态,需要做很多持久化的事情,还需要妥善管理生命周期,和一些转跳逻辑。
代码片段:
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Log.i("lifecycle","onCreate");
}
@Override
protected void onStart() {
super.onStart();
Log.i("lifecycle","onStart");
}
@Override
protected void onResume() {
super.onResume();
Log.i("lifecycle","onResume");
}
@Override
protected void onPause() {
super.onPause();
Log.i("lifecycle","onPause");
}
@Override
protected void onStop() {
super.onStop();
Log.i("lifecycle","onStop");
}
@Override
protected void onDestroy() {
super.onDestroy();
Log.i("lifecycle","onDestroy");
}
@Override
protected void onRestart() {
super.onRestart();
Log.i("lifecycle","onRestart");
}
}
结果分析:
- 启动app
09-18 21:26:31.984 30822-30822/servicedemo.example.com.myapplication I/lifecycle: onCreate
09-18 21:26:31.984 30822-30822/servicedemo.example.com.myapplication I/lifecycle: onStart
09-18 21:26:31.994 30822-30822/servicedemo.example.com.myapplication I/lifecycle: onResume - 点击home
09-18 21:27:25.294 30822-30822/servicedemo.example.com.myapplication I/lifecycle: onPause
09-18 21:27:25.554 30822-30822/servicedemo.example.com.myapplication I/lifecycle: onStop - 在任务栏重新打开app
09-18 21:28:04.484 4377-5627/? D/LifecycleResourceManager: begin check cache…
09-18 21:28:05.284 30822-30822/servicedemo.example.com.myapplication I/lifecycle: onRestart
09-18 21:28:05.294 30822-30822/servicedemo.example.com.myapplication I/lifecycle: onStart
09-18 21:28:05.294 30822-30822/servicedemo.example.com.myapplication I/lifecycle: onResume - 点击back
09-18 21:28:36.804 30822-30822/servicedemo.example.com.myapplication I/lifecycle: onPause
09-18 21:28:37.074 30822-30822/servicedemo.example.com.myapplication I/lifecycle: onStop
09-18 21:28:37.074 30822-30822/servicedemo.example.com.myapplication I/lifecycle: onDestroy