Android本义指"机器人",最早出现于法国作家利尔亚当在1886年发表的科幻小说《未来夏娃》中,他将外表像人的机器起名为Android。同时也是Google于2007年11月5日宣布的基于Linux平台的开源手机操作系统的名称,中文名:安卓(官方) 。Android系统早期由原名为"Android"的公司开发,谷歌在2005年收购"Android.Inc"后,继续对Android系统开发运营,它采用了软件堆层(software stack,又名软件叠层)的架构,主要分为三部分。底层Linux内核只提供基本功能,其他的应用软件则由各公司自行开发,部分程序以Java编写。
版本记录
Android 用甜点作为它们系统版本的代号的命名方法开始于 Andoird 1.5 发布的时候。作为每个版本代表的甜点的尺寸越变越大,然后按照26个字母数序:纸杯蛋糕,甜甜圈,松饼,冻酸奶,姜饼,蜂巢。
Android 1.1
发布时间:发布于 2008 年9月
Android 1.5
Cupcake纸杯蛋糕
发布时间:发布于 2009 年 4 月
Android 1.6
Donut甜甜圈
发布时间:2009 年 9 月
Android 2.0
Eclair松饼
发布时间:2009 年 10 月 26 日
Android 2.1
Eclair松饼
发布时间: 2009 年 10 月 26 日
Android 2.1主要特性:提升硬件速度
更多屏幕以及分辨率选择
大幅度的用户界面改良支持
Exchange活动墙纸
大幅改进虚拟键盘
蓝牙 2.1
Google 地图
Android 2.2
Froyo冻酸奶
谷歌于北京时间2010年5月20日晚上10:30点在旧金山Moscone会展中心举办Google I/O 2010大会第二天的会议,Google正式发布了代号是“froyo 冻酸奶”的Android操作系统2.2版。
相对于上一版本的 改变:
1、整体性能大幅度的提升
2、3G网络共享功能。
3、Flash的支持。
4、App2sd功能。
5、全新的软件商店。
6、更多的Web应用API接口的开发。
Android 2.2 For x86
在几位华人软件工程师的努力下,中国的用户已经可以享受到真正在上网本上可以安装使用的Android了,这就是孙翊、黄志伟和Corentin Chary和其他几位活跃的开发人员正在参与的Android-x86开源项目。此外,还有其他的开发人员如Kelly2.Blue、Wu Hai Gang、Swand ke 和 Wallace1 wang,他们都是来自中国大陆和台湾的华人软件工程师。
在孙翊发来的最新版本更新说明中,明确表示:他们已经解决了众多的技术难题,包括中文拼音输入法的bug修订,蓝牙支持,无线网卡支持、SSL的bug修订等,甚至已经可以直接安装到上网本上,从硬盘启动。
Android2.3
Gingerbread姜饼
北京时间2010年12月7日凌晨,Google正式对外发布了他们的下一代智能手机操作系统Android 2.3也就被大家所熟知的Android Gingerbread系统。
主要更新包括:
游戏:增加了新的垃圾回收和优化处理事件,以提高对游戏的支持能力。原生代码可直接存取输入和感应器事件、EGL/OpenGL ES、OpenSL ES。新的管理窗口和生命周期的框架。
多媒体:支持VP8和WebM视频格式,提供AAC和AMR宽频编码,提供了新的音频效果器,比如混响、均衡、虚拟耳机和低频提升
通讯方式:支持前置摄像头、SIP/VOIP和NFC(近场通讯)
站在用户的角度看,这次更新的亮点主要有:
简化界面、速度提升:
更快更直观的文字输入:
一键文字选择和复制/粘帖:
改进的电源管理系统:
新的应用管理方式:
原生支持前置摄像头、互联网通话和NFC(近场通讯):
系统原生支持VoIP,可以在联系人里加入它的SIP帐户,然后直接通过系统来拨打VoIP电话。
增加下载管理器:
Android 2.4
Ice cream sandwich冰激凌三明治
预计在2011年第四季度发布。其甜品代号为 Ice cream sandwich(冰激凌三明治)
目前已知的Android 2.4带来的更新包括更多的动画特效、更快的运行速度、软件通话降噪、视频聊天等。
Android N.n
有可靠的消息人士表示,继“冰激凌三明治”之后,下一版Android系统的代号将为“Jelly Bean”。
Android3.0
Honeycomb(蜂巢)
3.0系统特性
·优化针对平板
·全新设计的UI增强网页浏览功能
·n-app purchases功能
Android3.1
Honeycomb 蜂巢(改进3.0BUG)
·经过优化的Gmail电子邮箱;
·全面支持GoogleMaps
Android 3.1Honeycomb(3.0改进)
将Android手机系统跟平板系统再次合并,从而方便开发者。
任务管理器可以滚动,支持USB 输入设备(键盘、鼠标等)。
支持 Google TV.可以支持XBOX 360无线手柄
widget支持的变化,能更加容易的定制屏幕widget插件。
Android 3.2
Honeycomb(蜂巢)
2011年7月13日,Google公司放出了新版“蜂巢”Android 3.2的升级源码,合作厂商摩托罗拉亦在当日发布了针对旗下XOOM平板电脑的升级固件,为用户更新新版系统。
Android 3.2这一新版平板电脑操作系统开始支持7英寸设备,并引入了应用显示缩放功能,可以让那些针对手机开发的应用,更平滑的显示在平板电脑上。
系统优势
开放性
在优势方面,Android平台首先就是其开放性,开放的平台允许任何移动终端厂商加入到Android联盟中来。显著的开放性可以使其拥有更多的开发者,随着用户和应用的日益丰富,一个崭新的平台也将很快走向成熟。
挣脱束缚
在过去很长的一段时间,特别是在欧美地区,手机应用往往受到运营商制约,使用什么功能接入什么网络,几乎都受到运营商的控制。自从iPhone上市,用户可以更加方便地连接网络,运营商的制约减少。随着EDGE、HSDPA这些2G至3G移动网络的逐步过渡和提升,手机随意接入网络已不是运营商口中的笑谈。
丰富的硬件
这一点还是与Android平台的开放性相关,由于Android的开放性,众多的厂商会推出千奇百怪,功能特色各具的多种产品。
开发商
Android平台提供给第三方开发商一个十分宽泛、自由的环境。因此不会受到各种条条框框的阻挠,可想而知,会有多少新颖别致的软件会诞生。但也有其两面性,血腥、暴力、情色方面的程序和游戏如何控制正是留给Android难题之一。
Google应用
从搜索巨人到全面的互联网渗透,Google服务如地图、邮件、搜索等已经成为连接用户和互联网的重要纽带,而Android平台手机将无缝结合这些优秀的Google服务。
系统缺陷
一、
Android系统手机泄密
二、
拨号后自动挂断电话 通话BUG频繁出现
三、
对硬件配置要求高 制造成本增加
四、
系统费电严重 安卓手机续航不足
五、
系统计算器计算有偏差
例如在Android系统自带的计算器内输入14.52-14.49,正确结果应该是0.03,但是计算器结果显示的数字为0.0299999。
研发联盟
为了推广
Android
,Google和几十个手机相关企业建立了开放手机联盟(Open Handset Alliance)。 联盟成员包括摩托罗拉(Motorola)、HTC、SAMSUNG、LG、Intel、NVIDIA、SiRF、Skype、KUPA Map 、MTK 以及中国移动在内的34家技术和无线应用的领军企业。这34家企业中并不包含把持Symbian的Nokia公司,以及凭借着iPhone风光正在的Apple公司,微软没有加入,加拿大RIM和它的Blackberry也被挡在门外。
手机开放联盟大家庭成员名单:
终端制造商
Motorola(摩托罗拉)- 美国(美国最大的手机制造商,著名老牌IT公司)
Sony Ericsson(索尼爱立信)- 英国(索尼和爱立信的合资公司)
HTC(宏达国际电子股份有限公司)-中国台湾
Samsung Electronics(三星电子)- 韩国
LG Electronics(LG电子)- 韩国
Lumigon (丹麦陆力更手机公司)- 丹麦
ARCHOS(爱可视)- 法国
TOSHIBA(东芝)- 日本
SHARP(夏普)-日本
Fujitsu(富士通)-日本
NEC(日本电気株式会社)-日本
魅族 - 中国
小米--中国
移动运营商
China Telecom(中国电信)- 中国
China Mobile(中国移动)- 中国
China Unicom(中国联通)- 中国
SK Telecom - 韩国
KT - 韩国
LG U - 韩国
KDDI by AU - 日本
Softbank -日本
NTT DoCoMo(日本电信电话公司)- 日本
Sprint Nextel(美国斯普林特Nextel公司)- 美国
Telecom Italia(意大利电信)- 意大利
Telefónica - 西班牙
T-Mobile - 德国
半导体公司
ARM- 英国
Texas Instruments(德州仪器)- 美国
Qualcomm(高通)- 美国
NVIDIA(英伟达)- 美国
MediaTek(联发科)- 中国台湾
ST(意法半导体)- 欧洲
Infineon(英飞凌科技)- 德国
ST-Ericsson(ST爱立信)- 欧洲
Audience (听众)- 美国
Broadcom (博通)- 美国
Intel(英特尔)- 美国
Marvell (俊茂微电子)- 美国
SiRF(瑟夫)- 美国
Synaptics(新思)- 美国
HP(惠普)- 美国
软件公司
Aplix - 日本
Ascender - 美国
Skype(微软)- 美国
Esmertec(微迅)- 瑞士
Living Image - 美国
NMS Communications - 加拿大
Noser Engineering AG - 德国
Nuance Communication - 美国
PacketVideo - 美国
SkyPop - 美国
Sonix Network - 美国
The Astonishing Tribe - 瑞典
Wind River Systems(风河)- 美国
===========================================================================
大事记
2008年9月22日,美国运营商德国T-Mobile在纽约正式发布第一款Android手机——T-Mobile G1。该款手机为台湾宏达电子(HTC)代工制造,是世界上第一部使用Android操作系统的手机,支持WCDMA/HSPA网络,理论下载速率7.2Mbps,并支持Wi-Fi。
2009年10月28日正式发布了Android 2.0 智能手机操作系统。
2010年1月索尼爱立信首款Android机型X10上市 。
2010年1月7日,Google在其美国总部正式向外界发布了旗下首款合作品牌手机Nexus One(HTC G5),并同时开始对外发售。
2010年7月9日,美国NDP集团调查显示,Android系统已占据了美国移动系统市场28%的份额。
北京时间2011年3月25日,据国外媒体报道,谷歌周四表示,谷歌暂停开源Android3.0,并将暂时阻止小型手机生产商使用其Android 3.0“Honeycomb”系统,期限未定。
谷歌一位发言人通过电子邮件声明称,Honeycomb是专为平板电脑而非手机设计的,在该系统以开源形式发布前,还有很多工作要做。谷歌向《商业周刊》表示,推迟发布可能达数月之久。
国内品牌
魅族
魅族M9为一款多点触摸手机,于2010年12月16日发布,2011年1月1日正式上市。
J.wong在论坛发帖确定魅族M9将不能刷原生的Android系统,M9将不是简简单单的在Android系统上加个UI,而是深层定制安卓系统,现有的Android软件的兼容性也绝对不是问题。J.wong甚至表态想刷Android系统的安卓控们请远离M9。J.wong表示魅族M9的系统虽然内核采用Android内核,但从UI和用户体验方面完全看不出任何安卓的影子,使用Android内核只是为了能兼容数以十万计的安卓软件,增强魅族M9的软件扩展性,让M8之前一直被诟病的软件数量成为历史。
天语
天语W700是K-Touch天语手机在2011年初推出的一款WCDMA制式3G Android智能手机,同时,它还是第一款国产双核手机。这款采用了NVIDIA TEGRA2平台的高端智能手机首次发布在位于拉斯维加斯的CES2011展会上亮相。
天语W700采用基于ARM Cortex-A9 Dual Core的Tegra2 AP20H处理器,主频为1GHz,具有高性能低功耗的特点,它集成了高清视频处理器、图像处理器、音频处理器等众多模块的高度整合处理器。
联想
OMS和T-mobile G1搭载的Android(以最初上市版本为主)的不同之处就是可以使用户自行关闭正在运行的程序而不是由系统控制:按住屏幕上方向下拖动即可看到任务管理器。
HKC Pearl
做为目前在市面上唯一正式销售的Windows和Android系统双系统手机,这款HKC Pearl 珍珠珠配备了QVGA屏幕,内存采用了128MB/256MB的标准配置,主处理器采用PXA 310处理器,624Mhz的主频性能非常强劲,而且机器还配备了Wi-Fi,蓝牙2.0无线传输设置。
华为
华为U8230在外观上有别于其他Android手机的塑料风格,通体的银灰色和正面功能键盘的发丝纹路都洋溢着商务机型的味道。而作为功能上的特色,U8230拥有一块3.5英寸的大屏幕、高达1500毫安时的锂电池和一枚320万象素摄像头采用Android平台1.5版本。
中兴
中兴最近也大力发展android手机,推出了v880。
海尔
海尔的产品也青睐搭载android系统。海尔于09年上市的H7采用直板全触屏设计,操作系统上正是采用了最新的Google Android2.0操作系统。
海尔于2011年7月亮相青岛国际消费电子博览会的haipad,搭载创新工场家族“点心os”首款为PAD定制的“点心—互联网智能手持终端解决方案”。
华禹
xPhone是由上海禹华通信技术有限公司设计的,采用类iphone的触控设计,配置了3寸WQVGA分辨率的触摸屏,内建300W像素的摄像头,搭载Android平台,采用主频 624Mhz的Marvell PXA-310处理器,拥有128MB SDRAM+256MB ROM的内存配置,支持最大16GB的存储卡扩展,给出的参数中还加入了WiFi功能。
琦基
去年11月27日,琦基发布了全球首款Google Android/Windows Mobile双操作系统的智能手机琦基i6,采用Google Android操作系统的叫做琦基i6 goal,采用Windows Mobile操作系统的叫做琦基i6 Win。
蓝魔
蓝魔的V系列MP4以及平板电脑采用安卓系统。
酷派
推出D539等多款搭载Android平台的3G商务机型
小米
小米手机是小米公司(全称北京小米科技有限责任公司)研发的一款高性能发烧级智能手机。手机预计2011年8月发布,售价1999元,主要针对手机发烧友,采用线上销售模式。小米手机使用了高通Snapdragon S3 MSM8260手机处理器,也是世界上首款双核1.5GHz的智能手机。
国外品牌
三星、LG、摩托罗拉、夏普、索尼爱立信
编辑本段
系统架构
应用程序
Android以Java为编程语言,从接口到功能,都有层出不穷的变化,其中Activity等同于J2ME的MIDlet,一个 Activity 类(class)负责创建视窗(window),一个活动中的Activity就是在 foreground(前景)模式,背景运行的程序叫做Service。两者之间通过由ServiceConnection和AIDL连结,达到复数程序同时运行的效果。如果运行中的 Activity 全部画面被其他 Activity 取代时,该 Activity 便被停止(stopped),甚至被系统清除(kill)。
View等同于J2ME的Displayable,程序人员可以通过 View 类与“XML layout”档将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 Framework(PVMF)、Operating System Compatibility Library(OSCL)、Common、OpenMAX。
Android 使用skia 为核心图形引擎,搭配OpenGL/ES。skia与Linux Cairo功能相当,但相较于Linux Cairo, skia 功能还只是雏形的。2005年Skia公司被Google收购,2007年初,Skia GL源码被公开,目前Skia 也是Google Chrome 的图形引擎。
Android的多媒体数据库采用SQLite数据库系统。数据库又分为共用数据库及私用数据库。用户可通过ContentResolver类(Column)取得共用数据库。
Android的中间层多以Java 实现,并且采用特殊的Dalvik 虚拟机(Dalvik Virtual Machine)。Dalvik虚拟机是一种“暂存器型态”(Register Based)的Java虚拟机,变量皆存放于暂存器中,虚拟机的指令相对减少。
Dalvik虚拟机可以有多个实例(instance), 每个Android应用程序都用一个自属的Dalvik虚拟机来运行,让系统在运行程序时可达到优化。Dalvik 虚拟机并非运行Java字节码(Bytecode),而是运行一种称为.dex格式的文件。
硬件抽像层
Android 的 HAL(硬件抽像层)是能以封闭源码形式提供硬件驱动模块。HAL 的目的是为了把 Android framework 与 Linux kernel 隔开,让 Android 不至过度依赖 Linux kernel,以达成 kernel independent 的概念,也让 Android framework 的开发能在不考量驱动程序实现的前提下进行发展。
HAL stub 是一种代理人(proxy)的概念,stub 是以 *.so 档的形式存在。Stub 向 HAL“提供”操作函数(operations),并由 Android runtime 向 HAL 取得 stub 的 operations,再 callback 这些操作函数。HAL 里包含了许多的 stub(代理人)。Runtime 只要说明“类型”,即 module ID,就可以取得操作函数。
编程语言
Android 是运行于 Linux kernel之上,但并不是GNU/Linux。因为在一般GNU/Linux 里支持的功能,Android 大都没有支持,包括Cairo、X11、Alsa、FFmpeg、GTK、Pango及Glibc等都被移除掉了。Android又以bionic 取代Glibc、以Skia 取代Cairo、再以opencore 取代FFmpeg 等等。Android 为了达到商业应用,必须移除被GNU GPL授权证所约束的部份,例如Android将驱动程序移到 userspace,使得Linux driver 与 Linux kernel彻底分开。bionic/libc/kernel/ 并非标准的kernel header files。Android 的 kernel header 是利用工具由 Linux kernel header 所产生的,这样做是为了保留常数、数据结构与宏。
目前Android 的 Linux kernel控制包括安全(Security),存储器管理(Memory Management),程序管理(Process Management),网络堆栈(Network Stack),驱动程序模型(Driver Model)等。下载Android源码之前,先要安装其构建工具 Repo来初始化源码。Repo 是 Android 用来辅助Git工作的一个工具。
安全与权限
Android本身是一个权限分立的操作系统。在这类操作系统中,每个应用都以唯一的一个系统识别身份运行(Linux用户ID与群组ID)。系统的各部分也分别使用各自独立的识别方式。Linux就是这样将应用与应用,应用与系统隔离开。
系统更多的安全功能通过权限机制提供。权限可以限制某个特定进程的特定操作,也可以限制每个URI权限对特定数据段的访问。
Android安全架构的核心设计思想是,在默认设置下,所有应用都没有权限对其他应用、系统或用户进行较大影响的操作。这其中包括读写用户隐私数据(联系人或电子邮件),读写其他应用文件,访问网络或阻止设备待机等。
安装应用时,在检查程序签名提及的权限,且经过用户确认后,软件包安装器会给予应用权限。从用户角度看,一款Android应用通常会要求如下的权限:
拨打电话、发送短信或彩信、修改/删除SD卡上的内容、读取联系人信息、读取日程信息,写入日程数据、读取电话状态或识别码、精确的(基于GPS)地理位置、模糊的(基于网络获取)地理位置、创建蓝牙连接、对互联网的完全访问、查看网络状态,查看WiFi状态、避免手机待机、修改系统全局设置、读取同步设定、开机自启动、重启其他应用、终止运行中的应用、设定偏好应用、震动控制、拍摄图片等。
一款应用应该根据自身提供的功能,要求合理的权限。用户也可以分析一款应用所需权限,从而简单判定这款应用是否安全。如一款应用是不带广告的单机版,也没有任何附加内容需要下载,那么它要求访问网络的权限就比较可疑。