Activity是Android应用的重要组成单元之一(另外三个是Service、BroadcastReceiver和ContentProvider),而Activity又是Android应用最常见的组件之一。通常一个Android应用需要N个Activity组成,Activity主要负责与用户交互
在一个Activity生命周期中有以下方法会被系统回调:
接下来写一个简单的程序解释Activity的生命周期
package com.example.activitytest;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
public class MainActivity extends Activity {
private String TAG = "Demo";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Log.i(TAG, "onCreate");
}
@Override
protected void onRestart() {
// TODO Auto-generated method stub
super.onRestart();
Log.i(TAG, "onRestart");
}
@Override
protected void onResume() {
// TODO Auto-generated method stub
super.onResume();
Log.i(TAG, "onResume");
}
@Override
protected void onStart() {
// TODO Auto-generated method stub
super.onStart();
Log.i(TAG, "onStart");
}
@Override
protected void onDestroy() {
// TODO Auto-generated method stub
super.onDestroy();
Log.i(TAG, "onDestroy");
}
@Override
protected void onPause() {
// TODO Auto-generated method stub
super.onPause();
Log.i(TAG, "onPause");
}
@Override
protected void onStop() {
// TODO Auto-generated method stub
super.onStop();
Log.i(TAG, "onStop");
}
}
(1)打开应用时,看一下LogCat
正好对应这部分
(2)当我们按BACK键时,我们这个应用程序将结束,看一下LogCat
正好对应:
(3)当我们打开应用程序时,比如浏览器,我正在浏览NBA新闻,看到一半时,突然想听歌,这时候会按HOME键,然后去打开音乐应用程序。当我们按HOME的时候,看一下LogCat
正好对应:
(4)当我们再次启动ActivityDemo应用程序时,看一下LogCat
正好对应: