Android四大組件總結
1:Actiivty
用戶可以看見並可以操作的界面
Activity開啟方式:startActivityForResult
:startActivity
Activity生命周期: onCreate onStart onResume onPause onStop onDestroy onRestart
橫豎屏切換的生命周期 :先銷毀activity然後在創建一個新的activity
activity的啟動模式:
1:stardand (標準模式)
2:singleTop (單一頂部模式)
3:singleTask (單一任務模式)
4:singleInstance (單一實例模式)
intent(意圖) 作用:開啟組件,傳遞數據
開啟組件: activity BroadcastReceiver service
傳遞數據: java中八大基本類型及其數組
serializable
Parcelable
bundle
intent
分類: 顯示意圖 直接指定類的字節碼文件
應用場景:開啟自己應用中的組件
優點:代碼書寫簡單,效率高
隱示意圖 開啟目標組件,回去匹配意圖過濾器,如果匹配成功則開啟,如果匹配失敗,則拋出異常.
應用場景:開啟自己後其他應用程序中的組件
優點:代碼書寫復雜,效率低
2:BroadcastReceiver(廣播接收著) :系統通過廣播群發消息,只要註冊了的接受者都可以接收
特點:只要安裝在手機上的接收者,不管有沒有啟動,都可以接收特定的廣播.
版本差異:如果用戶強制停止了廣播接收者,低版本可以接收特定的廣播,高版本不可以,如果想要接收,重新啟動一次應用即可
常見的系統廣播:
SD卡插拔
應用程序卸載與安裝
外撥電話
短信到來
屏幕鎖屏解鎖
電池電量變化
註冊方式:
在清單文件中註冊
在代碼中註冊
分類:
無序廣播:
只要接受者註冊了廣播特定動作,就可以接受廣播
有序廣播:
接受者按照有先級從高到底一級一級底接受廣播
優點: 優先級 1000 ~ ~ -1000 優先級默認是0
高優先級的接受者可以攔截終止廣播
可以指定最終的廣播接受者:無論前面的接受者咋麽攔截終止廣播,它都是最後一個接受到廣播的,不需要在清單文件中註冊
3:Service(服務)
AIDL(進程間通信)
4:ContentProvider(內容提供者)
Android四大組件總結