Application生命週期(一)

2022-01-14 05:49:08 字數 1297 閱讀 3427

它的生命週期是整個程式執行中最長的 因為它是全域性的單例,所以在不同的activity和service中獲取的都是乙個物件。

第乙個是在配置被改變時觸發

第二個是在程式建立時建立

第三個記憶體不夠時觸發

第四個當終止程式時呼叫 但是不能保證一定呼叫

第五個是在記憶體清理時觸發

1

/**2

* @author

ljcheng

3* @date 2019/6/294*/

5public67

private89

@override

10public

void

oncreate()

1516

@override

17public

void

onterminate()

2425

@override

26public

void

onlowmemory()

3233

@override

34public

void ontrimmemory(int

level)

3940

@override

41//

配置改變時觸發這個方法

42public

void

onconfigurationchanged(configuration newconfig)

4647 }

1:前端程序可以是乙個持有執行在螢幕最前端並與使用者互動的activity的程序(onresume方法被呼叫時),也可以是持有乙個正在執行的intentreceiver(也就是說他正在執行自己的onreceiveintent方法)的程序. 在系統中, 只會有少數這樣的程序, 並且除非記憶體已經低到不夠這些程序執行, 否則系統不會主動殺掉這些程序. 這時, 裝置通常已經達到了需要記憶體整理的狀態, 所以殺掉這些程序是為了不讓使用者介面停止響應.

2:可視程序是持有乙個被使用者可見, 但沒有顯示在最前端 (onpause方法被呼叫時) 的activity的程序. 舉例來說, 這種程序通常出現在乙個前端activity以乙個對話方塊出現並保持前乙個activity可見時. 這種程序被系統認為是極其重要的, 並且通常不會被殺掉, 除非為了保持所有前端程序正常執行不得不殺掉這些可見程序.

5:空程序是沒有持有任何活動應用元件的程序. 保留這種程序的唯一理由是為了提供一種快取機制, 縮短他的應用下次執行時的啟動時間. 就其本身而言, 系統殺掉這些程序的目的是為了在這些空程序和底層的核心快取之間平衡整個系統的資源

application使用,生命週期

總結為一下幾點 2.單例模式 3.用來共享資料,資料傳遞,資料快取。4.初始化變數,新增so庫等private string data public string getdata public void setdata string data 在activity中通過 進行資料共享。private ...

Application的生命週期

在多數情況下,每個android應用執行在自己的linux程序中.當乙個應用的某段code需要執行的時候這個程序將會被建立,直到不再需要該應用或系統要為其他的應用釋放記憶體的時候才停止.乙個非常重要且少有的特性是,應用程序的存活時間不是由這個應用直接控制的.而是由系統決定的,系統會根據每個已知的正在...

Application生命週期的學習

1 oncreate 在建立應用程式時建立 2 onterminate 當終止應用程式物件時呼叫,不保證一定被呼叫,當程式是被核心終止以便為其他應用程式釋放資源,那麼將不會提醒,並且不呼叫應用程式的物件的onterminate方法而直接終止進 程 3 onlowmemory 當後台程式已經終止資源還...