Intent可以启动一个Activity,也可以启动一个Service,还可以发起一个广播(Broadcast).

Intent由以下几个部分组成:动作(Action),数据(Data),分类(Category),类型(Type),组件(Component)和扩展信息(Extra).通过这些可以启动其他组件并携带信息.

Intent在寻找目标组件时有两种方法:第一,通过组件名称直接指定,第二,通过intent Filter过滤指定. 

 

Intent封装了它要执行动作的属性,这些属性最常见的是Action和Data.

 

Intent的ComponentName属性

Intent的组件名称对象由ComponentName类来封装,组件名称包含包名称和类名称,被声明在AndroidManifest.xml文件中。

组件名称通过setComponent(),setClass(),setClassName()设置,通过getComponent()获得。 

 

Intent的Action属性

我们可以为Intent定义一个Action属性来访问,Action属性是一个字符串,我们在程序中定义,并在要访问组件(例如,Activity)

的IntentFilter中声明就可以使用。 

 

在用Data属性的情况下也是可以成功启动activity的

 Uri data =Uri.parse("content://com.amaker.ch07.app/abc");

 intent.setData(data);

 在AndroidManifest.xml中

<data android:scheme="content" android:path="com.amaker.ch07.app/abc"/> 

 

posted on 2011-10-19 21:15  猪总的小短裤  阅读(159)  评论(0编辑  收藏  举报