Android初试--了解和认识Android

来源:互联网 发布:怎样成为淘宝超级会员 编辑:程序博客网 时间:2024/05/17 03:35

1.了解Android

       Android一词本义指“机器人”,是Google于2007年11月5日宣布的基于Linux平台的开源手机操作系统的名称,该平台由操作系统、中间件、用户界面和应用软件组成,号称是首个为移动终端打造的真正开放和完整的移动软件。它采用软件堆层的架构,主要分为三部分。底层以Linux内核工作为基础,由C语言开发,只提供基本功能;中间层包括函数库Library和虚拟机Virtual Machine,由C++开发。最上层是各种应用软件,包括通话程序,短信程序等,应用软件则由各公司自行开发,以Java作为编写程序的一部分。不存在任何以往阻碍移动产业创新的专有权障碍,号称是首个为移动终端打造的真正开放和完整的移动软件。

       Android OS系统是由Google、高通公司以及T-Mobile、HTC、摩托罗拉和其它公司携手通过“开放手机联盟”集合来自不同国家的技术以及手机行业领导厂商的努力共同开发的系统平台。

2.开放手机联盟

       开放手机联盟(Open Handset Alliance)是美国Google公司于2007年11月5日宣布组建的一个全球性的联盟组织。这一联盟将会支持Google可能发布的手机操作系统或者应用软件,共同开发名为Android的开放源代码的移动系统。开放手机联盟包括手机制造商、手机芯片厂商和移动运营商几类,联盟创始成员34家,目前有71位成员(数据一直在变化)。

①、手机和其他终端制造商

LG(乐金电子) http://www.lge.com/

HTC(宏达电子) http://www.htc.com/

Motorola(摩托罗拉) http://www.motorola.com/

Samsung Electronics(三星电子) http://www.samsung.com/

acer(宏碁)-中国台湾(全球电脑整合行销品牌)

ASUS(华硕)-中国台湾(全球领先的3C解决方案提供商之一)

Dell(戴尔)-美国(全球最大的个人电脑公司)

FIH(富士康)-中国台湾

FUJITSU(富士通)-日本

Garmin(佳明)-中国台湾(提供导航服务)

Kyocera(京瓷)-日本

Motorola(摩托罗拉)- 美国(美国最大的手机制造商,著名老牌IT公司)

NEC(日本电器)-日本(为商业企业、通信服务以及政府提供信息技术(IT)和网络产品)

Pantech(泛泰)-韩国

Sharp(夏普)-日本(液晶屏幕生产商)

TOSHIBA(东芝)- 日本(日本IT行业的先锋)

②、电信运营商

中国移动(中国) http://www.chinamobile.com/en

China Telecom(中国电信)- 中国

China Unicom(中国联通)- 中国

T-mobile(德国) http://www.t-mobile.net/

Telefonica(西班牙) http://www.telefonica.es/

NTT Docomo(日本) http://www.nttdocomo.com/

Sprint Nextel(美国) http://www2.sprint.com/mr/aboutsprint.do

Telecom Italia(意大利) http://www.telecomitalia.it/

KDDI Corporation(日本) http://www.kddi.com/

Bouygues Telecom-法国

Softbank Mobile-日本

TELUS-加拿大

Vodafone-英国

③、芯片制造商

Audience(语音处理) http://www.audience.com/

Broadcom Corporation(博通) http://www.broadcom.com/

Intel Corporation(英特尔)http://www.intel.com/products/mid

Marvell Technology Group(马维尔) http://www.marvell.com/

Qualcomm(高通) http://www.qualcomm.com/

SiRF Technology Holdings(GPS芯片供应商) http://www.sirf.com/

Synaptics(用户界面) http://www.synaptics.com/

Texas Instruments(德州仪器) http://www.ti.com/wirelessresources

NVIDIA Corporation(NVIDIA图形芯片)http://www.nvidia.com/page/handheld

④、软件供应商

Ascender

eBay

Esmertec

Google

LivingImage

LiveWire

Nuance Communications

PacketVideo

SkyPop

SONiVOX

⑤、通讯软件商

Aplix

Noser Engineering

TAT

Wind River

2009年5月18日中国联通正式宣布加入开放手机联盟。

2010年1月7日中国电信正式宣布加入开放手机联盟。

2010年7月13日,台湾MTK联发科技正式宣布加入开放手机联盟。

3.认识Android

先看看Android平台框架:

       android的系统架构和其操作系统一样,采用了分层的架构。从架构图看,android分为四个层,从高层到低层分别是应用程序层、应用程序、框架层、系统运行库层(包含系统库和Android运行库)和linux核心层。

•Applications

•Application Framework

•Libraries

•Android Runtime

•Linux Kernel

        Android本身是一套软件堆叠(Software Stack),主要分为三层:操作系统、中间件、应用程序。

        Android的中间件可以再细分出两层,底层是函数库(Library)和虚拟机(Virtual Machine; VM),上层为应用程序框架(Application Framework)。上面架构图中蓝色部分为Java语言开发,绿色部分为C/C++开发,红色的Kernel层为C开发,黄色部分为Dalvik VM部分。

1.应用程序层(Applications)

      Android会同一系列核心应用程序包一起发布,该应用程序包包括email客户端,SMS短消息程序,日历,地图,浏览器,联系人管理程序等。所有的应用程序都是使用JAVA语言编写的。

2.应用程序框架层(Application Framework)

       开发人员也可以完全访问核心应用程序所使用的API框架。该应用程序的架构设计简化了组件的重用;任何一个应用程序都可以发布它的功能块并且任何其 它的应用程序都可以使用其所发布的功能块(不过得遵循框架的安全性限制)。同样,该应用程序重用机制也使用户可以方便的替换程序组件。

隐藏在每个应用后面的是一系列的服务和系统, 其中包括;

一个可扩展的视图(Views),可以用来构建应用程序, 它包括列表(lists),网格(grids),文本框(text boxes),按钮(buttons), 甚至可嵌入的web浏览器。

内容管理器Content Providers使得应用程序可以访问另一个应用程序的数据(如联系人数据库), 或者共享它们自己的数据。

一个资源管理器Resource Manager提供非代码资源的访问,如本地字符串,图形,和布局文件( layout files )

一个通知管理器Notification Manager使得应用程序可以在状态栏中显示自定义的提示信息。通知列设定在手机的顶部,像短信(short Message),Voice mail都会在此进行提示。

一个Activity管理Activity Manager用来管理应用程序生命周期并提供常用的导航回退功能。

3.函数库层(Libraries)

       Android 包含一些C/C++库,这些库能被Android系统中不同的组件使用。它们通过 Android 应用程序框架为开发者提供服务。以下是一些核心库:

系统C库 – 一个从 BSD 继承来的标准 C 系统函数库( libc ), 它是专门为基于 embedded linux 的设备定制的。

媒体库 – 基于 PacketVideo OpenCORE;该库支持多种常用的音频、视频格式回放和录制,同时支持静态图像文件。编码格式包括MPEG4, H.264, MP3, AAC, AMR, JPG, PNG 。

Surface Manager – 对显示子系统的管理,并且为多个应用程序提 供了2D和3D图层的无缝融合。

LibWebCore – 一个最新的web浏览器引擎用,支持Android浏览器和一个可嵌入的web视图。

SGL - 一个内置的底层的2D图形引擎。

3D Libraries -基于OpenGL ES 1.0 APIs实现;该库可以使用硬件 3D加速(如果可用)或者使用高度优化的3D软加速。

Free Type- 位图(bitmap)和矢量(vector)字体显示。

SQLite – SQLite是一套开放源码的关系数据库,一个对于所有应用程序可用,功能强劲的轻型关系型数据库引擎。

SSL – Secure Socket Layer用于保护网页通讯的协议。

4.Android运行时库层(Android Runtime)

        Android虽然使用Java程序语言来开发应用程序,但是却不使用一般大家目前在用的J2ME版本来执行Java程序,而是采用Android自有的Android Runtime来执行。

        Android Runtime包含下面两个核心。

        1.Core Libraries

        Android 包括了一个核心库,该核心库提供了JAVA编程语言核心库的大多数功能。

        2.Dalvik Virtual Machine

        每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例。Dalvik被设计成一个设备可以同时高效地运行多个虚拟系统。 Dalvik虚拟机执行(.dex)的Dalvik可执行文件,该格式文件针对小内存使用做了优化。同时虚拟机是基于寄存器的,所有的类都经由JAVA编 译器编译,然后通过SDK中 的 “dx” 工具转化成.dex格式由虚拟机执行。

        Dalvik虚拟机有许多地方是参考Java虚拟机的设计,Dalvik虚拟机所执行的中间代码并非是Java虚拟机所执行的Java Bytecode,同时也不直接执行Java类(Java Class File),而是依靠转换工具将Java bytecode转为Dalvik VM执行时特有的dex(Dalvik Executable) 格式,成为.dex。Dalvik VM与Java VM最大的不同在于Java VM是Stack-based,而Dalvik VM是(register-based)。以技术层面来看Register-based VM的特性有个很大的好处,那就是对于目前主流的硬件架构,很容易与现有系统整合且达到最优化,而所需要的资源也相对较少。甚至在硬件实现VM上会比较容 易实现。最重要的是Dalvik并不是由J2ME实现,而不存在J2ME授权相关的问题。通常来说,Java比较慢不单单只是因为Virtual Machine的关系,Java的程序编译成Bytecode也是关键因素之一,因为Java VM采用了Stack-based的方式来产生指令,所以所有的变量都需要push, pop操作,所以就会多出不少指令,而Dalvik VM则采用Register-based方式,变量都存储在寄存器中,相比较而言,Dalvik VM的指令就会少一点,速度也就会更加快一点。Dalvik虚拟机依赖于Linux的一些功能,例如线程机制和底层内存管理机制。

5.操作系统层(Linux Kernel)

        Android平台的操作系统用的是Linux,内核版本为2.6版,包含的主要功能有安全(Security)、内存管理(Memory Management)、进程管理(Process Managemen)、网络协议栈(Network Stack)、硬件驱动(Driver Model)等,Linux内核也同时作为硬件和软件栈之间的抽象层。

4.Android版本历史:

2007年11月5日,谷歌发布了Android的第一个版本1.0。

2008年9月23日22:30,Google联合T-mobile和HTC,正式发布了首款Android平台的手机G1。

2008年第三季度,Google倡导的开源操作系统Android刚刚推出,尚未占有任何市场份额。

2009年10月26日,谷歌发布了Android2.0平台,代号Eclair(中文“小饼”)。

2009年12月3日,谷歌发布了Android2.0.1平台。

2010年1月10日,谷歌发布了Android2.1平台。

Android 2.1版本相比过去更新了许多的内容。总结起来主要包括以下10个方面变化:

        一是新版本的电源widget比过去更好看,并且在具备2.0版本所有功能的同时可以绑定多个Google账号;

        二是新版本在设置里增加Personalize功能,并且在无线控件里有了VPN设置,而这在之前Sense的1.5里是没有的功能;

        三是新版本增加Mobile network sharing功能,并且手机声音和显示也可以选择增加的重力感应校准;

        第四点变化是新版本将Location和Privacy分开,并且可以进行Connect to PC设置;

        至于新版本的第五点变化则是拥有更多桌面插件,在操作上更加简便和快捷;

        第六是还增加文字到语音转换功能;

        第七点则是新版本还采用新的拨号界面,其特色是按键更大,更易于操作;

        而新版本的第八点变化则是拥有最新的Google地图和将搭载新的浏览器;

        至于新版本的第九大则是具有所谓的全局搜索功能;

        相比而言,Android2.1版本的第十点变化则比较值得关注,其特色拥有最新版本的Android Market,将支持通过移动运营商网络支付购买应用程序和软件。

        在经历了Android 1.0、1.1、1.5、1.6、2.0、2.0.1、2.1的版本发展历程之后,2010年5月21日Android 2.2 Froyo(中文“冻酸奶”)正式与大家见面。

新版Android2.2系统使用了JIT编译器,它可以让整个系统的效能提升2至5倍,速度是2.1版本和2.2版本的最明显差距。新版Android2.2使用新的Linux内核(从2.6.29升级至2.6.33.4),可存取更大的RAM内存。

■ 速度提升

        Android 2.2中加入了Just-In-Time(JIT),可以使程序运行速度提高2-5倍。

■ 企业功能增加

        Android 2.2增加了超过20项企业功能,包括新的员工Exchange支持,设备管理员API等。看来Android也开始重视苹果早已重视的企业市场,RIM的日子更不好过了。

■ 推入消息和网络共享

        新加入的Cloud-to-Device Messaging API可以使用户向Android手机推入各种消息,现场还进行了将导航信息推入Nexus One的演示。此外,2.2加入了传闻已久的Tethering(网络共享)服务,还出现了iPad利用Android手机Tethering上网的画面。

■ 浏览器提升

        Google称Android 2.2内置的浏览器是世界上最快的移动设备浏览器,在Javascript性能上有2-3倍的提升。同时,Google地图的定位功能也可以在浏览器中使用;新加入浏览器的API还有摄像头。最后,Google宣布浏览器支持Flash和Air。

■ 电子市场Market改进

        在Android 2.2的软件商店Market上,也有了多项提升:比如大家期望已久的App2SD(以程序挪入SD卡方式实现);自动更新已经安装的应用程序;应用程序bug举报,此外最大的改进就是Google公布了一个网页版的软件商店,用户可以方便的从桌面浏览器浏览并购买应用、歌曲专辑等。

■ 移动广告服务

        Android上的广告服务,Adsense for mobile apps -- ADFMA ,和苹果的iAd有些类似,根据内容相关性推入形式各异的广告。

2010年12月7日Android 2.3 Gingerbread(中文“姜饼”)系统正式发布。

    这次更新的重点在于讨好游戏开发者(比如Playstation Phone吧?)。主要更新包括:

    游戏:增加了新的垃圾回收和优化处理事件,以提高对游戏的支持能力。原生代码可直接存取输入和感应器事件、EGL/OpenGL ES、OpenSL ES。新的管理窗口和生命周期的框架。 

    多媒体:支持VP8和WebM视频格式,提供AAC和AMR宽频编码,提供了新的音频效果器,比如混响、均衡、虚拟耳机和低频提升 。

通讯方式:支持前置摄像头、SIP/VOIP和NFC(近场通讯)。

        站在用户的角度看,这次更新的亮点主要有:

        简化界面、速度提升 。

        更快更直观的文字输入 。

        一键文字选择和复制/粘帖 。

        改进的电源管理系统 。

        新的应用管理方式 。

        原生支持前置前置摄像头、互联网通话和NFC(近场通讯)。

        增加下载管理器 。

2011年2月3日除夕夜谷歌在其总部(美国加州山景城)举办发布会,正式发布Android 3.0系统。该系统代号为Honeycomb(中文“蜂巢”)。

2011年5月,谷歌发布Android 3.1系统。

2011年7月13日,谷歌发布Android 3.2系统。

从2008年9月发布Android 1.1到2011年7月放出的新版“蜂巢”Android 3.2已经经历了十一个版本,安卓应用数量早已经超过20万,其中免费应用甚至超过了70%。

2011年10月19日,谷歌发布Android 4.0操作系统。该系统代号为Ice Cream Sandwich(简称ICS,冰淇淋三明治)。

2012年6月28日,谷歌发布Android 4.1操作系统。该系统代号为Jelly Bean(果冻豆)。

2012年10月30日,谷歌发布Android 4.2操作系统。该系统代号仍为Jelly Bean(果冻豆)。

北京时间2013年7月25日凌晨,谷歌正式对外发布了Android 4.3。相比较Android 4.2来看,最为亮点和重要的更新便要数支持OpenGL ES 3.0,作为移动图形设备性能的主要接口,Android也正式支持。

5.介绍Android手机

       2010年3月,三星Galaxy S I9000头顶三个光环,它当时是全球最薄Android手机、GPU最强的Android手机、屏幕最好的Android手机。采用Android 2.1系统,ARM Cortex A8架构1GHz主频处理器,RAM512M,SGX540显示芯片,支持720P播放,能流畅播放1280*720分辨率的高清电影,4.0英寸1600万色Super AMOLED显示屏幕,800*480屏幕分辨率,9.9毫米的极致厚度,支持GSM 850/900/1800/1900Mhz,支持WCDMA,支持GPRS/EDGE,配有500万像素摄像头和30万像素副摄像头,方便拍照和3G视频通话。三星“GALAXY”系列的开山鼻祖。

        2011年4月,三星Galaxy S II的型号将被确定为I9100(国际型号),这款手机是三星电子在全球市场宣传多时的重量级旗舰手机,采用Android 2.3系统。该机一个设计上的亮点:机身最薄处仅为8.49毫米,配备了4.3英寸WVGA分辨率电容式触摸屏幕,并且选用了出色的Super AMOLED PLUS材料,内置800万像素的摄像头,支持LED闪光灯以及1080P高清视频录制,拍摄功能强劲而出色,成像效果优异。主频为1.2GHz的S5PV310 Exynos 4210双核处理器,并且运行内存达到了顶级的1GB,拥有高达16GB容量的储存空间。具备无线WiFi功能、支持蓝牙3.0以及GPS导航功能。

        2012年5月4日,三星Galaxy S III正式发布,这款手机搭载了一颗四核1.4GHz的CPU,1G的RAM,并且还拥有一块4.8英寸HD Super AMOLED屏幕,分辨率高达1280*720,这真是一块实实在在的720P屏幕。机身尺寸136.6x70.6x8.6mm,机身重量133g,背后800W摄像头,安装Android4.0系统。中国电信版本I939,中国联通版本I9300,中国移动版本I9308。

        2013年3月14日三星Galaxy S4将搭载的是Exynos 5410四核处理器(基于Cortex-A15架构、主频1.6GHz、GPU为八核心Mali-T658、28nm HKMG制造工艺),三星Galaxy S4支持ARM的big.LITTLE Processing省电技术,是A7+A15的组合。三星电子还为三星Galaxy S4配上1300万像素摄像头,其运行的是Android4.2.2+TouchWiz系统,并且机身厚度为7.7mm,内置的Rom:16/32/64Gb,RAM为2GB。国外消息,国外版本和港行版本已经在中国巨蛋上市。

HTC各版本代表机型分别为:

Android 1.5  HTC Dream G1

Android 1.6  HTC Hero  G3

Android 2.01  摩托罗拉Droid 国内叫Milestone里程碑

Android 2.1  Google Nexus One 国内简称N1

Android 2.1 HTC Desire(渴望,G7)

Android 2.1 HTC Wildfire(野火,G8)

Android 2.1 HTC Aria G9

Android 2.2 HTC Desire HD G10

Android 2.2 HTC Incredible S(惊艳S,G11)

Android 2.3 HTC Desire S(渴望S,G12)

Android 2.3.3 HTC Wildfire S(野火S,G13)

HTC Sensation(灵感,G14)

HTC Salsa/C510e(微客,G15)

HTC ChaCha/A810e(G16)

HTC Evo 3D/x515m(夺目3D,G17)

HTC Sensation XE(灵感XE,G18) 

HTC Raider 4G(G19)

HTC Rhyme(倾心,G20)

HTC Sensation XL(灵感XL,G21)

HTC Amaze 4G(G22)

HTC One X(G23,S720e)

HTC One S(G24,Z520e)

HTC One V(G25,T320e)

HTC Zara(Desire 601)

HTC Desire 300

魅族系列的android手机

魅族M9  Android  2.3

魅族MX  Android  2.3 

魅族MX2  基于Android 4.1

魅族MX3  基于Android 4.1

还有那些曾经属于我们的那些机皇等等,很多很多..........

 

 

 

原创粉丝点击