Android 移动平台概述

1 Android平台简介

2 Android平台所提供的功能

3 Android框架简介

4 Android SDK  简介:包括一系列ANDROID应用开发工具和文档,包括调试器,库文件集,手机设备模拟器,文档,范例和开发指导。

5 Android平台和其它平台的比较

 

----------------------------------------------

 

1 Android平台简介

    1》2007 11 5 GOOGLE 发布其与LINUX平台的开源移动平台操作系统--Android(此平台有操作系统,中间件,用户界面,应用软件所组成。)

    2》2008 9 22  T-MOBILE 发布第一款基于Android的手机,G1,支持WCDMA/HSPA网络,下载7。2M/S,支持WIFI无线网络。

    3》Android 将作为GOOGLE的企业战略的重要组成部分,实现“随时随地为每个人提供信息”。

    4》2009 5 17 中国移动和联想合作的首款手机 OMS(中国移动通过Android平台演变的一种适合中国手机用户的智能操作系统) OPHONE手机开始手用体验。  OMS 采用LINUX内核,通过大唐移动的3G芯片以MODEM AP方式桥接,使得Android系操兼容了中国移动的TD 网络。

 

2 Android平台所提供的功能

    1》应用程序架构:已提供多种不同的基础软件元素,为开发其它程序程序提供方便,节省时间精力。

    2》DALVIK虑拟机:GOOGLE专为手机而开发的节省资料,高效率的多任力的虑拟机,运行手机程序。

    3》Android 浏览器:是GOOGLE以WEBKIT的浏览引擎为基础开发的,局部缩放,触摸屏,

    4》Android 绘图:支持2D(SGL),3D(OPENGL ES)绘图函数库。

    5》SQLITE数据库:是一种开放性的源代码关系数据库。

    6》多媒体支持:支持多种不同的媒体格式。

    7》GSM驱动模块:Android专门提供了GSM驱动模块。

    8》提供了无线网络:BLUETOOTH,EDGE,3G,WI-FI。

    9》相机,GPS,电子指南针,加速感觉器功能。

    10》Android SDK 提供了完善的程序开发环境:模拟器emulator,调查试工具debug bridge,程序所用内存,性能方面的评估功能。ECLIPSE IDE ADK

 

 3 Android框架简介

    Android 移动平台概述  Android 移动平台概述

    1》Applications(应用程序层)

         提供了现成的常用的应用程序包:EMAIL客户端,SMS短消息程序,日历,地图,浏览器,联系人管理程序,这些是JAVA语言编写的。

    2》Applications FRAMEWORK(应用程序框架层):开发人员可以完全访问,调用的API 函数库。包括10个服务和系统:

          1> Activity Manager:活動管理員,用来管理应用程序生命周期,并提供常用的导航,回退功能。例如:開啟應用程式要用到的資源準備及關閉應用程式時,

               釋放出記憶體及相關資源等工作。

          2> Windwos Manager:視窗管理員.用來管理所有開啟的視窗程式。

          3> Content Providers:内容提供器,使得一个应用程序可以访问一个的数据(联系人数据库),或者共享它们自己的数据。可以用來讓應用程式可以存取

               或分享資料給其它應用程式。

          4> View System:建構程式原件,丰富可扩展的视图来构建应用程序:列表(LISTS),网格(GRIDS),文本框(TEXTBOXES),按钮(BUTTON)。

               甚至是嵌入 式的瀏覽器

          5> Notivication Manager:使得应用程序可以在状态栏显示自定义提示消息(Status Bar)。

          6> Package Manager:管理所有安裝在Android系統內的程式

          7> Telephony Manager:用來管理有關使用者撥打與接收電話的相關功能

          8> Resourse Manager:提供非代码的资源的访问,如本地字符串,图形,布局文件。

          9> Location Manager:用來管理地圖服務的相關功能.

          10> XMPP Service(可扩展消息传递和到场协议)

    3》Android 运行库

          3.1>  Libraries(函式庫)
                  1> Surface Manager:是用户空间中framework下libraries中负责显示相关的一个模块当系统同时执行多个应用程序时,Surface Manager会负责管

                    理显示与存取操作间的互动,另外也负责将2D绘图与3D绘图进行显示上的合成。

                     surface manager 可以准备一块 surface(可以看作一个layer),把 surface 的 fd (一块内存) 传给一个 app,让 app 可以在上面作画。

                     典型应用如下:

                    Android 移动平台概述
                 Android 移动平台概述

                  Surface manager架构分析

                     Android中的图形系统采用Client/Server架构,如下:

                     Client:应用程序相关部分。代码分为两部分,一部分是由Java提供的供应用使用的api,另一部分则是由c++写成的底层实现。

                    Server:即SurfaceFlinger,负责合成并送入buffer显示。其主要由c++代码编写而成。

                    Client和Server之前通过Binder的IPC方式进行通信,总体结构图如下:

                    如上图所示,Surface的client部分其实是提供给各应用程序进行画图操作的一个桥梁,该桥梁通过binder通向server端的Surfaceflinger

                  , Surfaceflinger负责合成各个surface,然后把buffer传送到framebuffer端进行底层显示。其中每个surface对应2个buffer,一个front

                        buffer, 一个back buffer,更新时,数据更新在back buffer上,需要显示时,则将back buffer和front buffer互换。

                  2> Media Framework:支持音频,视频,图象。

                  3> SQlite:轻量极数据库。

                  4> OpenGL ES: 3d

                  5> Free Type:位图和失量字体显示。

                  6> WebKit: WEB浏览器引器。

                  7> SGL: 2d

                  8> SSL:

                  9> libc:系统C函数,专门为基于岖入式LINUX设备所定制的。

          3.2>  Android RunnTime

                   1> Core Libraries:   核心库提供了JAVA编程语言核心库的大多数功能.       

                   2> Dalvik virtual machine:提供給行動裝置一個最佳化過的Java虛擬機器,每一个Android应用程序都在它自己的进程中运行,都拥有一个独立

                        的Dalvik虚拟机实例。Dalvik被设计成一个设备可以同时高效地运行多个虚拟系统。 Dalvik虚拟机执行(.dex)的Dalvik可执行文件,该格式文件

                        针对小内存使用做了优化。同时虚拟机是基于寄存器的,所有的类都经由JAVA编译器编译,然后通过SDK中 的 "dx" 工具转化成.dex格式由虚

                        拟机执行。

                     Dalvik虚拟机核心系统服务依赖于 Linux 2.6 内核,如安全性,内存管理,进程管理, 网络协议栈和驱动模型。 Linux 内核也同时作为硬件和

                         软件栈之间的抽象层

   4 Linux Kernel

 

你可能感兴趣的:(android)