我開發(fā)的Android項目快結(jié)尾了。現(xiàn)在需要實現(xiàn)的是對Android程序生命周期的控制,所以我特別寫了一個例子來查看Android的生命周期。方便在項目的工作。先看代碼吧。超簡單的代碼就可以搞定一切。
package com.gggeye.android;
import android.app.Activity;
import android.os.Bundle;
public class LifelineDemo extends Activity{
protected void onCreate(Bundle icicle ){
super.onCreate(icicle);
Logger.info("onCreate.");
}
protected void onStart(){
super.onStart();
Logger.info("onStart.");
}
protected void onRestart(){
super.onRestart();
Logger.info("onRestart.");
}
protected void onResume(){
super.onResume();
Logger.info("onResume.");
}
protected void onFreeze(Bundle outIcicle){
super.onFreeze(outIcicle);
Logger.info("onFreeze.");
}
protected void onPause(){
super.onPause();
Logger.info("onPause.");
}
protected void onStop(){
super.onStop();
Logger.info("onStop.");
}
protected void onDestroy(){
super.onDestroy();
Logger.info("onDestroy.");
}
}
我們只需要在各個生命周期的時候調(diào)用,然后查看下他的日子輸出就OK了。下面看看結(jié)果吧。
1.點擊Run,啟動Android
從日志就可以看出Log的痕跡。至于不會查看日志的,建議到本站搜索下關(guān)于Android 日志的查看方法。
點Run的時候,可以查看到
OnCreate
OnStart
onResume的日志。
上面三個方法就相當(dāng)于J2ME的startApp的一個方法。
至于為什么onResume會在啟動中執(zhí)行,我感到有些意外,查看下APIs文檔
查看了下APIs說onResume與onFreeze方法是相互影響的,
二。當(dāng)你點擊Home鍵的時候
可以看到
onFreeze
onPause
onStop
上面的程序就是通知Android處于停止?fàn)顟B(tài),也就是相當(dāng)于J2ME pauseApp方法
三。點擊Android模擬器的關(guān)閉鍵可以看到
onPause
onStop
onDestory
上面三個方法結(jié)合就相當(dāng)于J2ME的destroyApp
四。Pause 過后,再點擊軟件圖標(biāo)
會出現(xiàn)
onRestart
onStart
onResume
上面的方法就是恢復(fù)程序的意思。在J2ME來說有沒有對于的方法呢。應(yīng)該就是startApp吧,不過要自己去判斷是否是第一次啟動,還是Restart了。
看來Androiod開發(fā)確實不如J2ME簡單。
package com.gggeye.android;
import android.app.Activity;
import android.os.Bundle;
public class LifelineDemo extends Activity{
protected void onCreate(Bundle icicle ){
super.onCreate(icicle);
Logger.info("onCreate.");
}
protected void onStart(){
super.onStart();
Logger.info("onStart.");
}
protected void onRestart(){
super.onRestart();
Logger.info("onRestart.");
}
protected void onResume(){
super.onResume();
Logger.info("onResume.");
}
protected void onFreeze(Bundle outIcicle){
super.onFreeze(outIcicle);
Logger.info("onFreeze.");
}
protected void onPause(){
super.onPause();
Logger.info("onPause.");
}
protected void onStop(){
super.onStop();
Logger.info("onStop.");
}
protected void onDestroy(){
super.onDestroy();
Logger.info("onDestroy.");
}
}
我們只需要在各個生命周期的時候調(diào)用,然后查看下他的日子輸出就OK了。下面看看結(jié)果吧。
1.點擊Run,啟動Android
從日志就可以看出Log的痕跡。至于不會查看日志的,建議到本站搜索下關(guān)于Android 日志的查看方法。
點Run的時候,可以查看到
OnCreate
OnStart
onResume的日志。
上面三個方法就相當(dāng)于J2ME的startApp的一個方法。
至于為什么onResume會在啟動中執(zhí)行,我感到有些意外,查看下APIs文檔
查看了下APIs說onResume與onFreeze方法是相互影響的,
二。當(dāng)你點擊Home鍵的時候
可以看到
onFreeze
onPause
onStop
上面的程序就是通知Android處于停止?fàn)顟B(tài),也就是相當(dāng)于J2ME pauseApp方法
三。點擊Android模擬器的關(guān)閉鍵可以看到
onPause
onStop
onDestory
上面三個方法結(jié)合就相當(dāng)于J2ME的destroyApp
四。Pause 過后,再點擊軟件圖標(biāo)
會出現(xiàn)
onRestart
onStart
onResume
上面的方法就是恢復(fù)程序的意思。在J2ME來說有沒有對于的方法呢。應(yīng)該就是startApp吧,不過要自己去判斷是否是第一次啟動,還是Restart了。
看來Androiod開發(fā)確實不如J2ME簡單。