在下面另外的课程中,你会看到其他启动的方式,onStart()和onResume()方法分别是让activity从Paused或者Stopped状态恢复Resumed状态。
提示:onCreate()函数包含一个参数叫savedInstanceState,我们在会在 重建一个activity 这个教程中讨论。
销毁Activity
activity生命周期第一回调是onCreate(),最后一个回调就是onDestroy()。系统会在activity发出结束信号的时候调用这个函数,然后你的activity实例就会完全被移除系统内存。
很多程序不需要实现这个函数,因为activity会被本地类销毁,你的activity也必须在onPause()和onStop()中执行大多数清理。如果你在onCreate()中启动了后台线程或者是启动了其他运行比较长的程序,而且没有适当的关闭,那么就有内存泄露的潜在可能,所以你必须在onDestroy()函数中杀掉他们。
@Override
publicvoidonDestroy() {
super.onDestroy();// 通常先调用父类方法
// 停止方法回溯
Android.os.Debug.stopMethodTracing();
}
提示:系统会在onPause()和onStopped()函数执行后执行onDestroy(),但是有一种例外:当你在onCreate()方法中调用finish()函数时。有些情况会这样,比如当你的activity临时决定运行其他activity时,你可以再onCreate()方法中调用finish()方法去销毁这个activity。这种情况下,系统会立刻调用onDestroy()而不调用其他生命周期函数。