深度探索Android应用程序的基本原理(3)

q        通过传递一个Intent对象给Context.startService(),一个service被启动(或者一个新的指令传达给正在运行的service)。Android调用该service的onStart()方法并将Intent对象传递给它。相似地,将一个intent传递给Context.bindService(),能够在进行调用的组件和目标service之间建立一个持续的连接。该service在一个onBind()调用中接收该Intent对象。(如果该service还没有运行,bindService()能有选择地启动它。)例如,一个activity可能会与音乐播放服务建立一个连接,这样它就能向用户提供控制播放的方式(一个用户接口)。该activity将调用bindService()来建立这个连接,然后调用service所定义的方法来影响播放。(在稍后“远程过程调用RPC”一节会专门讲述service)

q        应用程序能通过传递一个Intent对象到诸如Context.sendBroadcast(),Context.sendOrderedBroadcast(),和Context.sendStickyBroadcast()这些方法中来创建一个广播。Android通过调用它们的onReceive()方法发布该Intent到所有感兴趣的broadcast receivers。(更多有关Intent的信息,在稍后一节“Intents and Intent Filters”中会专门讲述)

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wyxgwx.html