Android用Intent这个特殊类实现Activity与Activity之间的切换。Intent类用于描述应用的功能。在Intent的描述结构中,有两个最重要的部分:动作和动作对应的数据。
Intent作用的表现形式为:
1、通过Context.startActivity() orActivity.startActivityForResult() 启动一个Activity;
2、通过 Context.startService() 启动一个服务,或者通过Context.bindService() 和后台服务交互;
3、通过广播方法(比如 Context.sendBroadcast(),Context.sendOrderedBroadcast(), Context.sendStickyBroadcast()) 发给broadcast receivers。
Intent属性的设置,包括以下几点:(以下为XML中定义,当然也可以通过Intent类的方法来获取和设置)
一、Action,也就是要执行的动作
SDk中定义了一些标准的动作,包括:
当然,也可以自定义动作。
二、Data,也就是执行动作要操作的数据
Android中采用指向数据的一个URI来表示,如在联系人应用中,一个指向某联系人的URI可能为:content://contacts/1。对于不同的动作,其URI数据的类型是不同的(可以设置type属性指定特定类型数据),如 ACTION_EDIT指定Data为文件URI,打电话为tel:URI,访问网络为http:URI,而由content provider提供的数据则为content:
URIs。