● 应用程序(Application)
Android 的应用程序主要是用户界面(User Interface)方面的,通常以 JAVA 程序编写,其中还可以包含各
种资源文件(放置在 res 目录中)JAVA 程序及相关资源经过编译后,将生成一个 APK 包。Android 本身提供
了主屏幕(Home),联系人(Contact),电话(Phone),浏览器(Browers)等众多的核心应用。同时应
用程序的开发者还可以使用应用程序框架层的 API 实现自己的程序。这也是 Android 开源的巨大潜力的体现。
Android 系统的三种开发模式:
1. Android 应用开发
基于 Android 提供的系统 API(第三层 java framework)进行应用层面的开发,通常基于 Android SDK 开发即可
2. Android 系统开发
通常涉及用户空间各层的开发:C 或 C++本地库,JNI 层,Java 类库,应用层
3. Android 移植开发
Linux 中相关设备的驱动程序开发,比如 LCD,触摸屏,键盘,音频,摄像头,蓝牙等;
以及硬件抽象层的开发,硬件抽象层在用户空间,介于驱动和 Android 系统之间
从商业模式的角度来看,第一种类型的开发和第三种类型的开发是 Android 开发的主流。事实上,移动电话的
制造者主要进行第三种类型的开发,其产品是 Android 手机;公司、个人和团体都可以进行第一种类型的开发,
其产品是不同的 Android 应用程序。
Android 应用开发
Android 的应用程序开发是 Android 开发的另一个方面,从开发的角度来看,这种形式的开发可以基于某
个硬件系统,在没有硬件系统的情况下也可以基于 Linux 或者 Windows 下的 Android 模拟器来开发。这种类
型的开发工作在 Android 系统的上层。
事实上,在 Android 软件系统中,第 3 个层次(Java 框架)和第 4 个层次(Java 应用)之间的接口也就
是 Android 的系统接口(系统 API)。这个层次是标准的接口,所有的 Android 应用程序都是基于这个层次的
接口开发出来的。Android 系统的第 4 个层次就是一组内置的 Android 应用程序。
作为 Android 应用程序开发者,其开发的应用程序其实和 Android 系统的第 4 个层次的应用程序是一个
层次的内容。例如,Android 系统提供了基本的桌面程序,开发者可以根据 Android 的系统接口,实现另外一
个桌面程序,提供给用户安装使用;根据 Android 系统的接口开发游戏,也是 Android 应用程序开发的一个重
要方向。
Android 应用程序开发的结构如图 1-7 所示。