欢迎来到天天文库
浏览记录
ID:41093298
大小:113.00 KB
页数:12页
时间:2019-08-16
《安卓操作系统》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、Android(安卓)手机操作系统第一部分Android创始人安迪·鲁宾(AndyRubin)美国计算机技术专家和成功的企业家,领导开发了Android操作系统。现为Google工程副总裁。1989年加入苹果公司。1990年,苹果分拆他所在的手持计算和通信设备部门,成立GeneralMagic公司,公司倒闭后加入ArtemisResearch,开发了交互式互联网电视WebTV。后与人创办Danger公司,担任CEO,但不久被免职。离开Danger公司后,安迪又创办了Android公司。2005年公司被Google收购。2007年,Android操作系统以开源项目
2、形式发布,并成立了开放手机联盟作为支持组织,很快成为最具竞争力的手机操作系统之一。他拥有多项无线通信专利。第二部分Android架构简介Android是基于Linux内核的操作系统,是Google公司于2007年11月5日宣布的基于Linux平台的开源手机操作系统的名称,该平台由操作系统、中间件、用户界面和应用软件组成,号称是首个为移动终端打造的真正开放和完整的移动软件。应用程序 Android以Java为编程语言,从接口到功能,都有层出不穷的变化,其中Activity等同于J2ME的MIDlet,一个Activity类(class)负责创建视窗(window
3、),一个活动中的Activity就是在foreground(前景)模式,背景运行的程序叫做Service。两者之间通过由ServiceConnection和AIDL连结,达到复数程序同时运行的效果。如果运行中的Activity全部画面被其他Activity取代时,该Activity便被停止(stopped),甚至被系统清除(kill)。 View等同于J2ME的Displayable,程序人员可以通过View类与“XMLlayout”档将UI放置在视窗上,Android1.5的版本可以利用View打造出所谓的Widgets,其实Widget只是View的一种,
4、所以可以使用xml来设计layout,HTC的AndroidHero手机即含有大量的widget。至于ViewGroup是各种layout的基础抽象类(abstractclass),ViewGroup之内还可以有ViewGroup。View的构造函数不需要再Activity中调用,但是Displayable的是必须的,在Activity中,要通过findViewById()来从XML中取得View,Android的View类的显示很大程度上是从XML中读取的。View与事件(event)息息相关,两者之间通过Listener结合在一起,每一个View都可以注册一
5、个eventlistener,例如:当View要处理用户触碰(touch)的事件时,就要向Android框架注册View.OnClickListener。另外还有Image等同于J2ME的BitMap。中介软件 操作系统与应用程序的沟通桥梁,应用分为两层:函数层(Library)和虚拟机(VirtualMachine)。Bionic是Android改良libc的版本。Android同时包含了Webkit,所谓的Webkit就是AppleSafari浏览器背后的引擎。Surfaceflinger是就2D或3D的内容显示到屏幕上。Android使用工具链(Tool
6、chain)为Google自制的BionicLibc。 Android采用OpenCORE作为基础多媒体框架。OpenCORE可分7大块:PVPlayer、PVAuthor、Codec、PacketVideoMultimediaFramework(PVMF)、OperatingSystemCompatibilityLibrary(OSCL)、Common、OpenMAX。 Android使用skia为核心图形引擎,搭配OpenGL/ES。skia与LinuxCairo功能相当,但相较于LinuxCairo,skia功能还只是雏形的。2005年Skia公司被G
7、oogle收购,2007年初,SkiaGL源码被公开,目前Skia也是GoogleChrome的图形引擎。 Android的多媒体数据库采用SQLite数据库系统。数据库又分为共用数据库及私用数据库。用户可通过ContentResolver类(Column)取得共用数据库。 Android的中间层多以Java实现,并且采用特殊的Dalvik虚拟机(DalvikVirtualMachine)。Dalvik虚拟机是一种“暂存器型态”(RegisterBased)的Java虚拟机,变量皆存放于暂存器中,虚拟机的指令相对减少。 Dalvik虚拟机可以有多个实例(i
8、nstance),每个A
此文档下载收益归作者所有