activity(startActivity(intent)),启动服务(startService(intent))和广播信息(sendBroadcast(intent))。Android框架来通知这些方法的调用开始执行在目标应用程序代码。这个过程中内部组件
通信称为一个动作。简单地说,Intent对象定义的“Intent”以执行“action”。Android的一个最强大的特点是允许的多种intent寻址机制。开发人员可以解决一个目标组件使用其应用的空间,他们也可以指定一个隐含的名称。在后一种情况下,系统决定了一个action的最佳组件,通过考虑安装的应用程序和用户的选择。这个隐含的名字被称为动作字符串因为他特殊的类型的请求动作。例如一个view动作字符串,在一个intent中和数据域指向一个图像文件,系统将会直接指
首选图像浏览器、开发者也能使用动作字符串进行大量广播发送和接收。在接收端的接收者,开发者使用一intent过滤器来定制特殊的动作字符串。Android系包括附加目标的决议规则,但可选的数据操作字符串类型是最常见的。
图2显示了组件之间的FriendTracker和FriendViewer应用程序和组件的交互作用在应用程序中定义为基础的Android发布的一部分。在每一种情况下,发起一个组件与其他的沟通。为了简单起见,我们称这个为件间通信(ICC)。在许多方面,ICC是类似于进程间通信(IPC)在基于Unix的系统中。对于开发人员,ICC的功能相同无论目标是在相同或不同的应用与界定将在下文的安全规则中说明。可用的ICC的动作取决于目标的组成部分。每个组件类型支持自己的类型例如,当FriendViewer开始FriendMap的FriendMap活动出现在屏幕上。服务组件支持启动,停止,并结合行动,所以FriendTrackerControl活动,例如,可以启动和停止FriendTracker服务在后台运行。Action的绑定组件之间建立连接,使启动执行的服务定义的RPC。在我们的例子,FriendTracker结合到系统中的服务器位置的管理。
Understandandroidsecurity
thenextgenerationofopenoperatingsystemswon’tbeondesktopsormainframesbutonthesmallmobiledeviceswecarryeveryday.Theopennessofthesenewenvironmentswillleadto