Android中的Intent显式与隐式

来源:互联网 发布:钢笔 知乎 编辑:程序博客网 时间:2024/06/02 06:43
一.Intent用于启动组件的相关方法
1.Activity
startActivity(Intent intent)
startActivityForResult(Intent intent,int requestCode)
2.Service
ComponentName startService(Intent service)
boolean bindService(Intent service,ServiceConnection conn, int flags)
3.BroadcastReceiver
sendBroadcast(Intent intent)
sendBroadcast(Intent intent, String receiverPermission)
sendOrderedBroadcast(Intent intent,String receiverPermission, BroadcastReceiver resultReceiver,Handler scheduler,int initialCode,String initialData,Bundle InitialExtras)
sendOrderedBroadCast(Intent intent,String receiverPermission)
sendStickyBroadcast(Intent intent)
sendStickyOrderdBroadcast(Intent intent, BroadcastReceiver resultReceiver,Handler scheduler,int initialCode,String initialData,Bundle InitialExtras)
 
二.Intent的属性有7种,分别是:
1.Component - 用于明确指定要启动的目标组件,一般用于一个程序内指定启动的组件
2.Action - 描述接下来行为的“动作”
3.Category - 描述接下来行为的“类别”
4.Data - 描述启动组件所需要的额外数据
5.Type - 描述启动组件所需要的数据的类型
6.Extra - 携带的数据
7.Flag -
 
三.Intent的种类有两种:
一类是显式Intent,一类是隐式Intent。
1.显示Intent - 就是只需要用到Component属性的Intent,这样的Intent可以无视组件的intent-filter设置,不过需要知道所需启动组件所在的包和文件名,一般用于启动自己程序内的其他组件。
2.隐式Intent - 未设置Component属性的Intent,一般会需要设置Action,Category,Data,Type四个属性,然后Android根据这四个属性来决定哪个组件可以响应该“意图”。


原创粉丝点击