Android系统四个层级

android 是一个开放的系统,这个系统体积非常庞大,不同的开发者在开发过程中并不需要掌握整个android 系统,只要进行其中某一个部分的开发 android 的开发分四个层次

1. Linux操作系统及驱动, 该层由C 语言实现

2. 本地代码框架,该层次由C,C++实现

3. java框架,该层主要由java 实现

4. java应用程序,该层主要由java 实现

应用程序层:

所有的应用程序都是使用java 语言编写的,通过调用应用程序框架层(Application Framework)所提供的API 来完成。

应用程序框架层:

为开发人员提供了可以完全访问核心应用程序所使用的API 框架。

•活动管理器:管理应用程序生命周期并提供常用的导航回退功能。比如:开启应用程序需要的资源和退出应用程序时需要的释放资源。

•窗口管理器:管理所有开启的窗口程序。

•内容提供器:使应用程序可以访问另一个应用程序的数据(如联系人数据库),或者共享它们的数据。

•视图系统:可以用来构建应用程序,它包括列表list 、网格grid 、文本框text box 、按钮button 、图形绘制等,以及可嵌入的web 浏览器

•通知管理器:使应用程序可以再状态栏中显示自定义的提示信息。

•包管理器:管理所有安装在Android 系统中的应用程序。比如:信息查看和卸载程序等。

•资源管理器:提供各种资源供应程序使用。比如:字符资源、图像资源、音频资源。

•硬件服务:电话拨打和接听等相关功能、管理地图服务的相关功能、有关蓝牙服务的相关功能、WIFI 服务相关功能、USB 服务相关功能、传感器服务相关功能。 系统运行时库:

系统运行库层包括程序库和Android 运行库两部分

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

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

Media Framework:基于PacketVideoOpenCORE ,该库支持多种格式的音频和视频的回放和录制,同时支持静态图像文件。编码格式包括:MPEG4、H.264、MP3、AAC 、AMR 、JPG 、PNG 。

SQLite :对于所有应用程序可用、功能强劲的轻型关系型数据库引擎

OpenglES 支持OpenGL ES1.x和OpenGL ES 2.0该库可以使用硬件3D 加速或者使用高度优化的3D 软加速

FreeType :位图、矢量和字体显示

Webkit :最新的Web 浏览器引擎,支持Android 浏览器和一个可嵌入的Web 服务器。

SSL :安全通信相关技术处理,为网络通信提供安全及数据完整性的一种安全协议。

Libe :Android 并没有采用glibc 作为C 库,而是采用了Google 自己开发的Bionic Lib 。它从BSD 继承了标准的C 系统函数库,是专门为基于嵌入式Linux 设备定制的。

2)Android 运行库:

Android 运行时库又分为核心库和Dalvik 虚拟机两部分。核心库提供了Java 语言核心库的大多数功能,这里主要通过JNI 的方式向应用程序框架层提供调用底层程序库的接口。Dalvik 虚拟机是为了能同时高效地运行多个VMs 而实现的。 Linux 内核层:

Android 依赖于Linux2.6内核提供的核心系统服务,例如安全、内存管理、进程管理、网络栈、驱动模块等,Android 对内核进行了增强。

android 是一个开放的系统,这个系统体积非常庞大,不同的开发者在开发过程中并不需要掌握整个android 系统,只要进行其中某一个部分的开发 android 的开发分四个层次

1. Linux操作系统及驱动, 该层由C 语言实现

2. 本地代码框架,该层次由C,C++实现

3. java框架,该层主要由java 实现

4. java应用程序,该层主要由java 实现

应用程序层:

所有的应用程序都是使用java 语言编写的,通过调用应用程序框架层(Application Framework)所提供的API 来完成。

应用程序框架层:

为开发人员提供了可以完全访问核心应用程序所使用的API 框架。

•活动管理器:管理应用程序生命周期并提供常用的导航回退功能。比如:开启应用程序需要的资源和退出应用程序时需要的释放资源。

•窗口管理器:管理所有开启的窗口程序。

•内容提供器:使应用程序可以访问另一个应用程序的数据(如联系人数据库),或者共享它们的数据。

•视图系统:可以用来构建应用程序,它包括列表list 、网格grid 、文本框text box 、按钮button 、图形绘制等,以及可嵌入的web 浏览器

•通知管理器:使应用程序可以再状态栏中显示自定义的提示信息。

•包管理器:管理所有安装在Android 系统中的应用程序。比如:信息查看和卸载程序等。

•资源管理器:提供各种资源供应程序使用。比如:字符资源、图像资源、音频资源。

•硬件服务:电话拨打和接听等相关功能、管理地图服务的相关功能、有关蓝牙服务的相关功能、WIFI 服务相关功能、USB 服务相关功能、传感器服务相关功能。 系统运行时库:

系统运行库层包括程序库和Android 运行库两部分

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

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

Media Framework:基于PacketVideoOpenCORE ,该库支持多种格式的音频和视频的回放和录制,同时支持静态图像文件。编码格式包括:MPEG4、H.264、MP3、AAC 、AMR 、JPG 、PNG 。

SQLite :对于所有应用程序可用、功能强劲的轻型关系型数据库引擎

OpenglES 支持OpenGL ES1.x和OpenGL ES 2.0该库可以使用硬件3D 加速或者使用高度优化的3D 软加速

FreeType :位图、矢量和字体显示

Webkit :最新的Web 浏览器引擎,支持Android 浏览器和一个可嵌入的Web 服务器。

SSL :安全通信相关技术处理,为网络通信提供安全及数据完整性的一种安全协议。

Libe :Android 并没有采用glibc 作为C 库,而是采用了Google 自己开发的Bionic Lib 。它从BSD 继承了标准的C 系统函数库,是专门为基于嵌入式Linux 设备定制的。

2)Android 运行库:

Android 运行时库又分为核心库和Dalvik 虚拟机两部分。核心库提供了Java 语言核心库的大多数功能,这里主要通过JNI 的方式向应用程序框架层提供调用底层程序库的接口。Dalvik 虚拟机是为了能同时高效地运行多个VMs 而实现的。 Linux 内核层:

Android 依赖于Linux2.6内核提供的核心系统服务,例如安全、内存管理、进程管理、网络栈、驱动模块等,Android 对内核进行了增强。


相关内容

  • 单打独斗的产品设计师工作流程总结
  • 二.收集资料 了解需求后,要整理整合相关信息,尤其是要设计一个完整产品的时候. 这个过程中要明确以下内容: 1. 这个产品依赖的硬件.是客户端还是网页,网页要不要考虑pad端.这个产品是不是为某种硬件设计的,比如智能手表.智能眼镜等.这些硬件屏幕的分辨率,这个平台有没有设计规范,毕竟后面的设计工作也 ...

  • [果壳实验室专访]克里斯·安德森,创客养成计划
  • 果壳实验室采访克里斯·安德森了啊!!! 啊!!!上错图了啊!!!此Anderson,非彼Andersen啊!!! 老爷子的名字大家可能不熟悉,但是混互联网的多多少少都听说过"长尾理论"吧,就是老爷子出版的第一本书.老爷子还出版过<免费:商业的未来>和<创客:新工 ...

  • HTML5开发实战之网易微博 | 网易用户体验设计中心
  • HTML5在国内外越来越受到互联网开发团队的青睐.国外,谷歌兴致勃勃地开发Chrome Web Store,微软发布了支持使用HTML5技术开发的"Irish Spring"主题网站,诺基亚斥巨资购得并打造的NOKIA MAP业务.国内的互联网巨头对这股大洋彼岸吹来的新web开发 ...

  • 1.android发展历程简介
  • android (Google 公司开发的操作系统) Android 是一种基于Linux 的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google 公司和开放手机联盟领导及开发.尚未有统一中文名称,中国大陆地区较多人使用"安卓"或"安致& ...

  • 基于Android平台的点歌系统设计与实现毕业论文
  • 基于Android 平台的点歌系统设计与实 现 毕业设计(论文)原创性声明和使用授权说明 原创性声明 本人郑重承诺:所呈交的毕业设计(论文),是我个人在指 导教师的指导下进行的研究工作及取得的成果.尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为 ...

  • 02-丁同飞-屠菁-基于Android的手机天气预报系统
  • 合肥学院 2013届 毕 业 论 文(设 计) 论文(设计)题目 院系名称 专业(班级) 姓名(学号) 指 系 完 基于Android的手机天气预 报系统 计算机科学与技术系 计算机科学与技术 2009级本科3班 丁同飞 (0904013004) 屠 菁 袁 暋 2013-06-02 导负成教责时师 ...

  • Android智能手机天气预报系统设计
  • Android智能手机天气预报系统设计 摘要:在分析讨论Android 应用系统设计原理的基础上,提出了Android 智能手机天气实况预报系统用户界面以及获取并解析城市列表数据的设计方法,给出了在用户界面上呈现列表数据的设计过程,实现了一个简单的Android 智能手机城市天气实况预报系统.系统在 ...

  • htc手机使用技巧
  • 1.使用Android电源管理 从Android 2.1系统开始内置了一个非常强大的带能源管理widget,通过这个widget你可以快速开启或者关闭Wi-Fi,蓝牙,GPS,同步这些手机耗电大户,还可以方便的设定手机屏幕亮度,长按手机屏幕,就可以在widgets目录选择启用. 2.Android手 ...

  • 基于Android的智能家居终端设计与实现
  • 基于Android 的智能家居终端设计与实现 摘 要: 在深入分析Android 的系统架构及其应用程序组成的基础上,设计和实现了一款基于Android 的智能家居终端.终端主要包括主控制模块.信号处理模块.网络管理模块.媒体流管理模块及信息存取模块等功能模块.较好地融合了Android 与智能家居 ...