首页 > 代码库 > 今天把疯狂的Android 的 Intent(意图) 这章看了。总结了一些知识点

今天把疯狂的Android 的 Intent(意图) 这章看了。总结了一些知识点

  Intent ---  表达自己的意图

  通过 Intent 可以启动 (activity、service、BroadcastReceiver)
  Intent 是程序组件之间通信的重要媒介

  一个Intent 对象只能包含一个Action

  Intent属性:Component、Action、Category、Data、Type、Extra、Flag
     |---Component
           用于指定需要启动的目标组件
           Component 属性需要接受一个ComponentName 对象
           ComponentName:需要指定包名和类名
           指定了Component属性 明确要启动哪个组件 (显式意图)
        |---Flag
            用于携带需要交换的数据 

        |---Action   代表Intent 所要完成的抽象"动作"

        |---Category  用于为Action增加额外的附加类别信息 

        |---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

        |---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>   

 

今天把疯狂的Android 的 Intent(意图) 这章看了。总结了一些知识点