Intent --- 表達本身的意圖 android
經過 Intent 能夠啓動 (activity、service、BroadcastReceiver)
Intent 是程序組件之間通訊的重要媒介 對象
一個Intent 對象只能包含一個Action 字符串
Intent屬性:Component、Action、Category、Data、Type、Extra、Flag
|---Component
用於指定須要啓動的目標組件
Component 屬性須要接受一個ComponentName 對象
ComponentName:須要指定包名和類名
指定了Component屬性 明確要啓動哪一個組件 (顯式意圖)
|---Flag
用於攜帶須要交換的數據 it
|---Action 表明Intent 所要完成的抽象"動做" io
|---Category 用於爲Action增長額外的附加類別信息 ast
|---Data 用於向Action 屬性提供操做的數據 Data 屬性接受一個(Uri) 對象
|
|----Uri對象 經過字符串的形式來表示
content://com.android.contacts/contacts/1
Uri 字符串格式規範:scheme://host:port/path scheme ==> content host===>com.android.contacts port(被省略) path===>contacts/1 service
|---Type 用於指定Uri的對象MIME類型能夠自定義MIME類型 格式:(abc/xyz)便可 程序
|---Extra Extra屬性用於多個Action之間進行數據交換 通信
|---Flag Flag 屬性用於爲該Intent添加一些額外的控制旗標
|
|-----經常使用的Flag旗標
|
|----FLAG_ACTIVITY_BROUGHT_TO_FRONT (經過 FLAG_ACTIVITY_BROUGHT_TO_FRONT 啓動的Activity 下次啓動的時候會直接從 activity 棧中把activity 帶入棧頂 ) 數據
<intent-filter> 包含的子元素 1.<action> 2.<category> 3.<data>