Android 四大組件
Activity、Services、Content Provider、Broadcast Receiver膳凝。
Activity 的啟動方式 (launchMode)
standard、singleTop恭陡、singleTask蹬音、singleInstance
|用例|啟動模式|多個實例?|注釋|
| ------------- |-------------| -----|
|大多數(shù)Activity的正常啟動|standard|是|默認值休玩。系統(tǒng)始終會在目標任務中創(chuàng)建新的Activety實例并向其傳送Intent|
|同上|singleTop|有條件|如果目標任務的頂部已存在一個Activity實例著淆,則系統(tǒng)會調用該實例的onNewIntent()方法向其傳送Intent,而不是創(chuàng)建新的Activity實例拴疤。|
|專用啟動(不建議用作常規(guī)用途)|singleTask|否|系統(tǒng)在新任務的根位置創(chuàng)建Activity并向其傳送Intent永部。不過,如果已存在一個Activity實例呐矾,則系統(tǒng)會通過調用該實例的onNewIntent()方法向其傳送Intent苔埋,而不是創(chuàng)建新的Activity實例。|
|同上|singleInstance|否|與“singleTask”相同蜒犯,只是系統(tǒng)不會將任何其他Activity啟動到包含實例的任務中组橄。該Activity始終是其任務唯一僅有的成員。|
Activity的生命周期
運行
Activity位于屏幕前臺并具有用戶焦點
暫停
另一個Activity位于屏幕前臺并具有用戶焦點罚随,但此Activity仍可見玉工。也就是說,另一個Activity顯示在此Activity上方淘菩,并且該Activity部分透明或未覆蓋整個屏幕遵班。暫停的Activity處于完全活動狀態(tài)(Activity對象保留在內存中,它保留了所有狀態(tài)和成員信息瞄勾,并與窗口管理器保持連接)费奸,但在內存極度不足的情況下,可能會被系統(tǒng)終止进陡。
停止
該Activity處于被另一個Activity完全遮蓋(該Activity目前位于“后臺”)愿阐。已停止的Activity同樣處于活動狀態(tài)(Activity對象保留在內存中,它保留了所有狀態(tài)和成員信息趾疚,但未與窗口管理器連接)缨历。不過,他對用戶不再可見糙麦,在需要內存時可能會被系統(tǒng)終止辛孵。