【Android源码 栏目提醒】:网学会员为需要Android源码 的朋友们搜集整理了【精品】安卓Android - 网络与通信相关资料,希望对各位网友有所帮助!
androidAndroid 一词的本义指“机器人”,同时也是 Google 于 2007 年 11 月 5 日宣布的基于 Linux 平台的开源手机操作系统的名称,该平台由操作系统、中间件、用户界面和应用软件组成,号称是首个为移动终端打造的真正开放和完整的移动软件。
目前,最新版本为 Android 2.4 Gingerbread 和 Android 3.0 Honeycomb。
系统简介 Android 是基于 Linux 内核的操作系统,是 Google 公司在 2007 年 11月 5 日公布的手机操作系统,早期由原名为Android的公司开发,谷歌在2005 年进行收购Android.Inc,Google 继续进行对 Android 系统开发运营,它采用了软件堆层(software stack,又名以软件叠层)的架构,主要分为三部分。
底层 Linux 内核只提供基本功能;其他的应用软件则由各公司自行开发,部分程序以 Java 编写。
2011 年初数据显示,仅正式推出三年的操作系统 Android 已经超越称霸十年的塞班系统,采用 Android 系统主要厂商包括美国摩托罗拉(MOTOROLA)、韩国的三星(SAMSUNG)、英国索尼爱立信(Sony Ericsson)另外还有中国厂商如:中国台湾 HTC、联想、华为、中兴等,使之跃居全球最受欢迎的智能手机平台,Android 系统不但应用于智能手机,也在平板电脑市场急速扩张。
应用程序 Android 以 Java 为编程语言,使接口到功能,都有层出不穷的变化,其中 Activity 等同于 J2ME 的 MIDlet,一个 Activity 类(class)负责创建视窗(window),一个活动中的 Activity 就是在 foreground(前景)模式,背景运行的程序叫做 Service。
两者之间通过由 ServiceConnection和 AIDL 连结,达到复数程序同时运行的效果。
如果运行中的 Activity 全部画面被其他 Activity 取代时,该 Activity 便被停止(stopped),甚至被系统清除(kill)。
View 等同于 J2ME 的 Displayable,程序人员可以通过 View 类与“XMLlayout”档将 UI 放置在视窗上,Android 1.5 的版本可以利用 View 打造出所谓的 Widgets,其实 Widget 只是 View 的一种,所以可以使用 xml 来设计 layout,HTC 的 Android Hero 手机即含有大量的 widget。
至于ViewGroup 是各种 layout 的基础抽象类(abstract class),ViewGroup之内还可以有 ViewGroup。
View 的构造函数不需要再 Activity 中调用,但是 Displayable 的是必须的,在 Activity 中,要通过 findViewById来从 XML 中取得 View,Android 的 View 类的显示很大程度上是从 XML 中读取的。
View 与事件(event)息息相关,两者之间通过 Listener 结合在一起,每一个 View 都可以注册一个 event listener,例如:当 View 要处理用户触碰(touch)的事件时,就要向 Android 框架注册 View.OnClickListener。
另外还有 Image 等同于 J2ME 的 BitMap。
中介软件 操作系统与应用程序的沟通桥梁,并用分为两层:函数层(Library)和虚拟机(Virtual Machine)。
Bionic 是 Android 改良 libc 的版本。
Android 同时包含了 Webkit,所谓的 Webkit 就是 Apple Safari 浏览器背后的引擎。
Surface flinger 是就 2D 或 3D 的内容显示到屏幕上。
Android使用工具链Toolchain为 Google 自制的 Bionic Libc。
Android 采用 OpenCORE 作为基础多媒体框架。
OpenCORE 可分 7 大块:PVPlayer、PVAuthor、Codec、PacketVideo Multimedia FrameworkPVMF、Operating System Compatibility LibraryOSCL、Common、OpenMAX。
Android 使用 skia 为核心图形引擎,搭配 OpenGL/ES。
skia 与 LinuxCairo 功能相当,但相较于 Linux Cairo skia 功能还只是雏形的。
2005年 Skia 公司被 Google 收购,2007 年初,Skia GL 源码被公开,目前 Skia 也是 Google Chrome 的图形引擎。
Android 的多媒体数据库采用 SQLite 数据库系统。
数据库又分为共用数据库及私用数据库。
用户可通过 ContentResolver 类(Column)取得共用数据库。
Android 的中间层多以 Java 实现,并且采用特殊的 Dalvik 虚拟机(Dalvik Virtual Machin