1.1.2Android 5.x平台架构及特性

Android系统的底层建立在Linux之上,该平台由操作系统、中间件、用户界面和应用软件4层组成,它采用一种被称为软件层叠(Software Stack)的方式进行构建。这种软件层叠结构是的层于层之间相互隔离,明确各层之间的分工。这种分工保证了层与层之间的低耦合,当下层的层内或层下发生改变时,上层的应用层序无需任何改变。

Android系统主要由5部分组成,下面分别对这5部分简单介绍。

1.应用程序层

Android系统将会包含一系列的核心应用程序,包括电子邮件客户,SMS程序,日历,地图,浏览器,联系人等。这些程序通常是由java语言编写的。这也是本书所介绍的主要内容:编写android系统上的应用程序。

2.应用程序框架

当我们开发android应用程序时,就是面向底层的应用程序框进行的。从这个意义上来看,Android系统上的应用程序是完全平等的,不管是Android系统提供的程序,还是开发者提供的程序,都可以访问Android系统提供的API框架。

Android应用程序框架提供了大量API供开发者使用,关于这些API的具体功能和用法则是本书后面要详细介绍的内容,此处不再展开阐述。

应用程序框架除了可作为应用程序开发的基础外,也是软件复用的重要手段,任何一个应用程序都可发布他的功能模块——只要发布时遵守了框架的约定,那么其他应用程序就可以使用这个功能模块。

3.函数库

Android包含一套被不同组件所使用的C/C++库的集合。一般来说,Android应用开发者不能直接调用这套C/C++库集,但是可以通过它上面的应用程序框架来调用这些库。

下面列出一些核心库。

->系统C库:一个从BSD系统中派生出来的标准C系统库(libc),并且专门为嵌入式Linux设备调整过。

->媒体库:基于PacketVideo的OpenCORE,这套媒体库支持播放和录制很多流行音频和视频格式,以及查看静态图片。主要包括MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等多媒体格式。

->Surface Manage:管理对显示子系统的访问,并可以对多个应用程序的2D和3D图层提供无缝整合。

->LibWebcore :一个全新的Wen浏览器引擎,该引擎为Android浏览器提供支持,也为WebView提供支持,WebView可以完全嵌入开发者自己的应用程序中。本书后面会有关于WebView的介绍。

->SGL:底层的2D图形引擎。

->3D libraries:基于OpenGL ES API实现的3D系统,这套3D库既可使用硬件3D加速(如果硬件系统支持),也可使用高度优化的软件3D加速。

->FreeType:位图和向量字体显示。

 ->SQLite:供所有应用程序使用的功能强大的轻量级数据库。

4.Android运行时

Android运行时由两部分组成:Android核心库集和ART。其中核心库集提供了Java语言核心库所能使用的绝大部分功能,而虚拟机则负责运行Android应用程序。

Android5.0以前的Android运行时由Dalvik虚拟机和Android核心库集组成,但由于Dalvik虚拟机采用了一种被称为JIT(Just-in-time)的解释器进行动态编译并执行,因此导致AndroidApp运行时比较慢;而ART模式则是在用户安装App时进行预编译(Ahead-of-time,简称AOT)的,将原本在程序运行时的编译动作提前到应用安装时,这样可以使得程序在运行时可以减少动态编译的开销,从而提高Android App的运行效率。

反过来,由于ART需要在安装App时进行AOT处理,因此ART需要占用更多的存储空间,应用安装和系统启动后时间会延长不少。

反过来,由于ART需要在安装APP时进行AOT处理,因此ART需要更多的存储空间,应用安装和系统启动时间会延长不少。

除此之外,ART还支持ARM,x86和MIPS架构,并且能完全兼容64位系统,Android5.0必然会带来更好的用户体验。

5.Linux内核

Android系统建立在Libux2.6之上。Linux内核提供了安全性,内存管理,进程管理,网络协议栈和驱动模型等核心系统服务。除此之外,Linux内核也是系统硬件和软件叠层之间的抽象层。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值