導航:首頁 > 編程語言 > 安卓程序activity

安卓程序activity

發布時間:2023-02-28 07:43:10

A. Android中,activity生命周期是指什麼

一個Android應用程序在運行時,對於底層的Linux Kernel而言都是一個單獨的進程,但是對於Android系統而言,因為局限於手機畫面的大小與使用的考慮,不能把每一個運行中的應用程序窗口都顯示出來。

所以通常手機系統的界面一次僅顯示一個應用程序窗口,Android使用了Activity的概念來表示界面。

運行中的應用程序分為五大類,分別是:

前景模式:foreground process

可見模式:visible process

背景模式:background process

空白模式:empty process

服務模式:service process

除了最後一個,貌似service process是Service的事情了。其他都與Activity相關。

Android系統會判斷應用程序Activity是屬於哪一個類,給予不同的Activity生命周期。

Activity的生命周期也是它所在進程的生命周期。

Activity生命周期的運行如圖:

Activity生命周期的每一個階段都表示為金字塔上的一個台階,當系統創建一個新的activity時,每一個回調函數都把activity的狀態網上挪一步。

金子塔的最頂層就是activity運行在前景模式下,用戶可與之交互。

當用戶離開activity時,系統調用另一些回調函數,將activity的狀態從金字塔中一步一步移下來。有些情況下,activity只移動一部分,並沒有完全到底,這些情況下仍然可以移動回頂部。

注意這些狀態中只有三個狀態是靜態(static)的,意味著activity只有在這三個狀態下能停留一段時間:

Resumed:foreground,用戶可交互running state

Paused:部分被遮擋,不能接收用戶輸入也不能執行代碼,另一個半透明或者小的activity正擋在前面。

Stopped:activity完全被遮擋,不能被用戶看到,activity被認為在background,當Stopped的時候,activity實例的狀態信息被保留,但是不能執行任何代碼。

其他狀態都是轉換狀態,系統會很快調用其他相應的回調函數離開這些狀態。比如系統調用onCreate()之後,會很快調用onStart(),之後是onResume()。

相信不少朋友也已經看了以上的分析之後,也基本了解了Activity生命周期的幾個過程,我們就來說一說這幾個過程。

1.啟動Activity:系統會先調用onCreate方法,然後調用onStart方法,最後調用onResume,Activity進入運行狀態。

2.當前Activity被其他Activity覆蓋其上或被鎖屏:系統會調用onPause方法,暫停當前Activity的執行。

3.當前Activity由被覆蓋狀態回到前台或解鎖屏:系統會調用onResume方法,再次進入運行狀態。

4.當前Activity轉到新的Activity界面或按Home鍵回到主屏,自身退居後台:系統會先調用onPause方法,然後調用onStop方法,進入停滯狀態。

5.用戶後退回到此Activity:系統會先調用onRestart方法,然後調用onStart方法,最後調用onResume方法,再次進入運行狀態。

6.當前Activity處於被覆蓋狀態或者後台不可見狀態,即第2步和第4步,系統內存不足,殺死當前Activity,而後用戶退回當前Activity:再次調用onCreate方法、onStart方法、onResume方法,進入運行狀態。

7.用戶退出當前Activity:系統先調用onPause方法,然後調用onStop方法,最後調用onDestory方法,結束當前Activity。

有關於Activity的生命周期是Android中最基礎和最重要的知識,如果你想系統的了解一下Activity的生命周期,推薦你可以去一個叫做秒秒學的教程網站上看看。

閱讀全文

與安卓程序activity相關的資料

熱點內容
netexcel導入代碼 瀏覽:231
pps緩存文件怎麼刪除 瀏覽:10
家裡網路在用怎麼檢測 瀏覽:419
克拉漫播下載的文件名 瀏覽:417
壓縮好的文件哪裡找 瀏覽:831
百度網盤怎樣上傳文件夾 瀏覽:320
java發展是 瀏覽:892
程序編程結束還要做什麼 瀏覽:778
pcb打版文件有哪些 瀏覽:39
網路原來ip地址忘記了怎麼辦 瀏覽:142
iphone6s微信密碼設置 瀏覽:810
java將數字轉換成字母 瀏覽:854
c盤中的哪些是系統文件夾 瀏覽:668
分布式服務如何跨庫統計數據 瀏覽:829
力控轉發數據客戶端模式如何建立 瀏覽:200
怎麼樣讓自己的網站不被別人看到 瀏覽:711
編程擴展效果如何 瀏覽:335
榮耀暢玩手環同步qq 瀏覽:475
怎麼向sql中添加資料庫 瀏覽:596
錄歌失敗重啟app什麼意思 瀏覽:522

友情鏈接