Android重新学习之旅——可执行文件

        Android是以Java语言开发,Android SDK编译工具将Android代码与其相关数据、资源一起打包,编译成一个后缀为apk的压缩文件,这个文件就是运行在Android上的可执行文件。一旦安装成功这个文件将在Android系统中创建一个安全沙盒用于运行程序。

        Android是一个多用户的Linux操作系统,其中每一个应用都是一个独立用户。每一个应用都有一个ID,ID与应用程序一般一一对应,但是应用程序的ID相对于应用程序本身是透明的,不可见的,只有系统应用可以对其进行处理。系统会为每一个应用软件中的文件设置访问限制,只有分配给应用程序的ID进程才拥有文件的访问权。每一应用都有其主机虚拟机(VM)因此应用程序间彼此互不干扰,相对独立的运行。默认情况下,每一应用程序都在自己的进程运行,只有应用程序任何一个组件被调用时才会开启进程,当应用程序中没有任何一个组件被调用或者系统需要为其他应用程序回收应用程序的内存空间时会结束应用进程。这就是Andorid的"最少特权原则",基于该原则默认情况下,应用程序只能访问他所需要的工作组件。这个Android就构建了一个相对安全的系统环境,没有被赋予权限的系统部分可以不被其他应用访问。

        尽管基于安全考虑,应该让两个应用程序尽可能的对立,但是实际情况下,有些场景中应用程序间需要共享数据,有些应用也需要调用系统服务。这一般有两种实现方式,1.为不同应用程序分配同一ID2.应用程序可以通过请求权限来访问设备数据。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章