三种程序的核心组件——activity、service和broadcast receiver,都是通过叫做intent的信息来激活的。 intent的信息发送是用来将相同或者不同程序的组件后期运行绑定的一种方法。intent本身,也就是intent对象,是一个被动的数据结构,有着被处理的操作的抽象描述。或者,通常是在broadcast的例子中,是已经发生或者正在发生的某些事情的描述。这儿有不同的机制来传送intent给每种组件。
- intent对象被传递给Context.startActivity()或者Activity.startActivityForResult()来运行一个activity或者让一个已经存在的activity做新的事情。(也可以被传递给 Activity.setResult() )来返回信息给叫做startActivityForResult()的activity。
- 一个intent对象被传递给Context.startService()来初始化一个服务或者让一个进行中的服务实现新的结构。类似的,一个intent可以被传递给Context.bindService()在调用组件和目标服务之间建立连接。如果服务没有运行,它可以选择性的初始化服务。
- 传递给任何broadcast方法的intent对象(例如Context.sendBroadcast(), Context.sendOrderedBroadcast(), 或者 Context.sendStickyBroadcast()),都被发送给所有有兴趣的broadcast侦听器。很多中broadcast都来源于系统代码。
转自我的android blog