计算机系统应用
2008年第11期
Android的架构与应用开发研究①
StudyofAndroid§ArchitectureandItsApplicationDevelopment姚昱曼1’2刘卫国1(1.
信息科学与工程湖南长沙410083;
2.湖南广播电视大学现代教育技术中心湖南长沙410004)
摘要:首先简要介绍了新一代智能手机平台—一Android的系统架构,然后通过和现有智能手机开发平台进行比较研究分析了该平台的结构特点,最后通过在该平台上开发一个在线P.S5阅读器验证了该平台的可
用性。
关键词:Android智能手机平台J2MERSS阅读器XML
2007年11月由Google牵头有30多家移动技术和
无线应用领域领先企业组成的开放手机联盟(open
HandsetAlliance
个虚拟的中间层,该层位于硬件与其它的
软件层之间。需要注意的是,这个内核操作系统并非类GNU/Linux的,所以其系统库、系统初始化和编程接口都和标准的Linux系统有所不同的。它没有采用虚拟内存文件系统,而是采用YAFFS2文件系统。YAFFS(Yet
FlashRleNANDAnother
l发布了其智能手机平台一一Android。
Android是一个真正意义上的开放性移动设备综合平
台,它包括操作系统、用户界面、中间件和应用
程序,拥
有移动电话
工作所需的全部软件,同时其开放性保证该
平台不存在任何阻碍移动产业创新的专有权障碍。
System)文件系统是一个开源的,专门为
Flash
设计的文件系统,具有很好的可移植性,
也是一种日志型文件系统,能够在Unux,uCLinux,和
1
Android平台的架构
Android平台自底向上由以下四个层次组成:Unux
WindowsCE上运行。YAFFS目前有YAFFS和YAFFS2
两个版本,一般说来,YAFF5对小页面(528字节/页)有很好的支持,而更大的页面(2K+64字节/页)就需要YAFFS2了¨1。作为新一代智能手机平台,Android需要支持超大容量的NANDFIaSh,所以采用支持大页面的YAFFS2文件系统。
内核层、Android运行时库和其他库层、应用框架层、应
用程序层。如图1所示
(2)Android运行时库和其他库层:Android运行时
库包含一组核心库(提供了
Java语言核心库内的大部
分功能)和DaMk虚拟机。同时Android提供了丰富的
库类支持且大部分为开
源代码,如采用的数据库为
图1
Android平台的结构
version
SQ|¨e。Android选择它作为移动终端的嵌入式数据库有以下优点,它无需安装和管理配置,它是一个储存在
(1)Unux内核层:Android基于Unux
单一磁盘文件中的完整数据库,体积小只有250KB但支持数据库大小至2TB,提供了对事务功能和并发处理的支持,而且比目前流行的大多数数据库运行速度快哩】。(3)应用框架层:在应用框架层Android开发人员
2.6.23内核来开发的,主要是添加了一个名为Goldfish的虚拟CPU以及Android运行所需的特定驱动代码。该层用来提供系统的底层服务,包括安全机制、内存管理、进程管理、
网络堆栈及一系列的驱动模块。作为一
①基金项目:国家自然科学基金160676016);湖南省高校科研项目f06D064)
万方数据
2008年第1l期
计算机系统应用
可以跟那些核心应用一样拥有访问框架APIs的全部权限。应用的系结构化设计简化了各组件之间的重用,任何应用都可以分发自己的组件,任何应用也可以使用这些分发的组件(应用的使用方法需遵循框架的安全性约束)。(4)应用程序层:Android本身会附带一些核心的应用程序,包括e—mail客户端、短信程序、日历、地图、浏览器、通讯录等等,目前所有的应用程序都是由Java语言开发的。
SDK
实例开发需要安装的SDK有JDK1.6和Androidm5一rcl5,使用的集成开发环境为Eclipse3.3(需
要安装集成环境的Android开发插件ADT,该插件提供了设备模拟器、调试工具、内存和效率调优工具),可以说Android程序的开发目前拥有