第四章对于此次设计工作做出了总结,并就可以改进的地方做出分析和对未来的展望。
2 Android智能手机与应用开发的基本理论
2。1 Android操作系统简介
2。1。1 Android 的发展和历史
Android 股份有限公司于2003年在美国加州成立,2005年被谷歌收购。谷歌公司希望能联合各方建立起一个开发式的、规范化的手机软件平台,把它变成移动业务内的一个开源式的操作平台[5]。安卓是以Linux为基础的一个开源操作系统,它主要应用于便携移动设备。Android 的版本更新较快,现今的最新版本是Android 4。4 操作系统。Android 使用甜品名称作为它的系统版本号的名称,然后按照字母表的顺序来进行命名,如纸杯状蛋糕(Cupcake)、甜甜圈(Donut)、松饼(Eclair)、姜饼(Gingerbread)、蜂巢(Honeycomb)[6]。
在国内,许多手机厂商已经投入到安卓操作系统的手机生产中, Android 手机操作系统的使用开发者不需支付任何费用,这是一个真正开源的操作平台。从研发费用的节省考虑,安卓操作系统是一个不错的选择。安卓系统在未来将会被更为广泛的使用,从而获得更多的支持。
2。1。2 Android 开发平台的架构及特性
安卓操作系统基于Linux系统实现了其底层的开发,此平台由四层组成,分别是操作系统、中间件、用户界面和应用软件,这样的构建方式叫作软件叠层(SoftwareStack)方式[7]。这种结构使得整个平台中的层次之间相互分离,进一步使各层分工相对明确。Android 系统由以下五个部分组成,下面是这五个部分的简单介绍:
1) 应用程序层(Applcations)
安卓系统通常包括一组核心的基本应用,这些核心的应用程序有电子邮件、网络浏览器、谷歌地图、SMS 应用程序、联系人、日历等。如果要开发自己的应用程序,开发者可使用Java 语言来设计开发,并且系统应用与开发者所开发的程序具有相同的资源分享权利。
2) 应用程序框架(Application Framework)
安卓的Application Framework作为应用程序开发的基本和软件复用的重要方法,为开发工程师提供了大量的API,所有应用程序都能设计其独特的功能板块,只要该板块的制定遵循了框架规定的规则,这些功能模块就能被其它任何应用程序所使用。
3) Android 运行时(Android Runtime)
核心库和Dalvik 虚拟机共同组成了安卓运行时,此核心库不但包括了绝大多数Java 语言所需要到的函数,而且包括Android 操作系统的核心库。Dalvik 虚拟机是是基于寄存器而开发的,其实就是java 虚拟机,它的重要功能有控制线程的生命周期、管理堆栈、垃圾回收、监视安全和异常问题发生等。
所有的安卓应用程序对应一个Dalvik 进程,均运行在独立的Dalvik 虚拟机里,至于高效的同时运行多个虚拟机,Dalvik 提供了完善的解决方案,所以安卓系统对于应用程序的隔离能轻松实现。跟在电脑或服务器中运行的虚拟机相比,Dalvik 虚拟机在移动终端上有着较高的运行效率,它不需要大量内存空间和高CPU 运算速度,它主要有以下两个特点:
a。 能运行专有的。dex 文件。专有的。dex 文件一方面可以把所有。class 文件打包到同一个文件中,另一方面可以减少。class 文件里的冗余信息,很大地提升了虚拟机的运行性能;此外,DX 工具也在性能上对。dex 文件进行优化[8]。
b。 基于寄存器实现。与大多数虚拟机不一样的是,Dalvik 虚拟机使用寄存器来实现而非使用栈[9]。一般情况下,使用寄存器来实现的虚拟机性能会更佳。
4) Linux 内核
安卓系统是建立在Linux 3。0之上的,核心系统功能有五个:网络协议栈、内存管理、安全性认证、驱动模型和进程管理等。除此之外,系统的软件和硬件叠层之间的抽象层也是Linux 内核[10]。