Android开发指南/基础与应用

维基教科书,自由的教学读本

Android应用是采用java语言编写的.被编译了的java代码(也包括程序所必须的一些数据和资源文件)与aapt工具绑定在一起打成一个有.apk扩展名的Android包.该文件是应用分发并且安装到移动设备上的媒介,是用户下载到他们设备上的安装文件。某一个.apk文件中的所有代码同属于是一个应用程序。

一般来说,每个Android应用活在它自己的世界中.

  • 默认的,每个应用运行在它自己的linux进程中.在任一个应用需要执行时android启动一个线程,当其它的应用不再需要系统资源且不再使用时这个线程终止。
  • 每一个线程有属于它自己的虚拟机,所以程序代码对于其它的程序代码来说是运行在一个隔离的环境中。
  • 默认,每一个应用被指定了一个唯一的Linux用户编号,该应用的文件只有属于它的用户和该应用自己可见,尽管它也可以输出到其它的应用中。

它有可能安排两种应用共享一个用户ID,而在这样情况下它们将能够查看其它的文件。保存系统资源,应用和相同的ID也可以运行在相同的Linux进程里,共享相同的虚拟机。


应用组件[编辑]

Android的一个最主要的特点是应用程序可以使用其它应用程序的组件(假如此组件提供给许可给它)。例如:如果你的应用程序需要一个卷轴列表组件的图标,而另一个应用已经开发出了一个合适的卷轴列表组件,并且可以用于其它程序中,你就可以调用此卷轴列表组件为你所用,而不是你自己再次开发一个。Your application doesn't incorporate the code of the other application or link to it. Rather, it simply starts up that piece of the other application when the need arises.

为使其工作,当系统任何部分需要启动时都必须要启动一个应用程序线程,一个关于那部分java对象实例。因此它不像其它的应用系统,Android系统没有应用程序中的单一入口(没有main方法)。当然了,它们有系统能够实例化和运行所需要的主要部件,有以下四种类型的部件:

活动

活动为需要用户关注和确认的部分显示一个可见的用户界面。例如,活动会显示一个用户可选的菜单项的列表,或是显示带有标签的照片。

应用组件:Intent[编辑]

关闭组件[编辑]

manifest文件[编辑]

Intent过滤器[编辑]

活动和任务[编辑]

线程处理[编辑]

组件生命周期[编辑]