(二)启动组件:intent
来源:互联网 发布:135 139 445端口 编辑:程序博客网 时间:2024/04/30 00:47
当有一个来自于content resolver的请求指向Content provider时,content provider启动,其他的三个组件(Activity,service,broadcast receiver)是通过一个叫做intent的异步的消息来启动的,一个intent持有一个message的内容,对Activity和 service来说,他是一个被要求的动作(action)和在该动作上的数据的URI,对broadcast receiver来说,intent对象是一个被广播的动作。
针对每种组件分别有对应的方法来启动它:
(1)一个 Activity是通过传递一个Intent对象到Context.startActivity()或者 Activity.startActivityForResult()来启动的(或者去做一些新的任务),被启动的这个Activity可以通过 getIntent()来获得导致他启动的那个intent的。
(2)一个service是通过传递一个Intent对象到 Context.startService()来启动的(或者给一些新的命令给正在运行的service),android调用service的 onStart()方法,并且把Intent对象传递给他,同样的,一个Intent可以传递到Context.bindService()方法里来建立 一个介于正在运行的service和调用他的组件之间的连接,这个service通过onBind()方法来接收这个Intent对象,(如果这个 service还没有运行,bindservice()能选择性的启动它),在后面的部分,关于绑定service的更多详细的信息请查看远程调用。
(3)一个应用可以通过传递一个Intent对象给像Context.sendBroadcast(), Context.sendOrderedBroadcast(), Context.sendStickyBroadcast()这样的方法来开始一个广播,android通过调用对应的onReceive()方法将 intent传递给所有对这个广播感兴趣的broadcast receiver。
转载自http://www.gphans.com/book/20100731948
- (二)启动组件:intent
- (二)启动组件:intent
- 使用Intent启动组件
- 四大组件之(二):Intent
- Activity组件启动过程(二)
- Intent启动系统组件(activity,service,BroadReceiver)-android学习之旅(四十九)
- intent详解(二)
- intent详解(二)
- intent详解(二)
- intent详解(二)
- intent详解(二)
- intent详解(二)
- Android深入四大组件(二)Service的启动过程
- Intent组件
- intent 组件
- Intent组件
- intent 组件
- Intent组件
- 当一个线程进入一个对象的一个synchronized方法后,其它线程是否可进入此对象的其它方法?
- 双向链表中节点的插入与删除操作
- linux的screen命令使用详解
- Ubuntu12.04安装Oracle11G
- Uboot 移植较好的文章
- (二)启动组件:intent
- hdu4438 Hunters
- TI DSP中几种软件滤波算法的比较
- [hoj 1632]Jungle Roads[Kruskal最小生成树模板题]
- BNU Word Amalgamation
- Android--Loaders
- JS微信打飞机游戏(三)
- hdu4528之搜索
- hdu 4608 I-number