Android/活動的生命周期
< Android
綜述
編輯隨着用戶在設備上打開,離開,返回,關閉應用軟件(App),應用中的活動實例(Activity instance)在整個生命周期(Lifecycle)中切換不同的狀態。
實例
編輯當您初次啟動應用程式,活動會實例化,來到系統前端被您所看到,並捕捉用戶焦點(User focus)。在這個過程中,Android作業系統調用此活動中的一系列生命周期方法。這些生命周期方法設置了用戶界面(User Interface)和其他組件。
如果用戶執行了一個操作,啟動了另一個應用,或者切換到另一個正在運行的應用,使當前活動被轉移到後台變得不可見,系統會調用另一套生命周期方法。活動雖然變為不可見狀態,但依舊保持完整。
階段
編輯- 創建(Created)
- 啟動(Started)
- 暫停(Paused)
- 恢復(Resumed)
- 停止(Stopped)
- 重啟(Restarted)
- 銷毀(Destroyed)
- 重建(Recreated)
意義
編輯生命周期的回調方法以內,您可以聲明在用戶離開、返回活動時活動如何行為。
例如,如果您正在構建一個流媒體視頻播放器,當用戶切換到其他應用的時候,可能要暫停視頻且斷開它的網絡連接節約流量。當用戶返回時,應用將重新連接到網絡,使用戶從同一斷點繼續觀看。這樣在用戶使用其他應用的時候就不會耗費網絡流量/頻寬和CPU資源。
在這一節當中,我們將介紹重要的生命周期回調方法。這些方法是所有活動實例共同具有的。還會介紹如何使用它們,以達到相應目的:您的應用如何執行用戶期望的行為,如何避免耗盡系統資源等。
開始/創建
編輯與傳統的C,C++,Java程序不同的是,Android不需要從main()方法開始運行。Android系統通過特殊的回調方法初始化活動實例的代碼,這些回調方法對應其生命周期的具體階段。有一系列方法用來啟動活動,也有一系列方法銷毀活動。這些方法就是Android應用的入口和出口,而不是一個main()方法。
您將要運用的第一個生命周期階段就是開始/創建一個活動實例。