1、applications层
包括andriod系统预装的系统和自己安装的第三方apk,大部分是由jave编写安装在Dalvik虚拟机中
2、application framework 层
隐藏在每一个应用后面的都是一系列的服务和系统
视图:可以用来构建应用程序,她包括列表(list),网格(grids),文本框(textboex),按钮(button),甚至可以嵌入web浏览器
内容提供器:使的一个程序可以访问另外一个程序的数据(如联系人数据库),或者共享他们的数据
资源管理器:提供非代码资源的访问,如本地的字符串,图形,布局文件
通知管理器:使得应用程序可以在状态栏显示自定义的提示信息
活动管理器:管理应用程序的生命周期并提供常用的导航回退功能
3、系统运行库层
android包括一些c/c++的库,这些库能被android系统中的不同组件使用,他们通过android应用程序的框架为开发者提供服务,以下是一些核心库。
系统C库、媒体库、SurfaceManager、LibWebCore、SGL、3Dlibraries、FreeType、SQLite、
Android运行库:android包括了一个核心库,该核心库包括了java编程语言的大多数功能
每一个应用程序都在她自己的进程中运行,都拥有一个独立的Dalvik虚拟实例,Dalvik被设计成了一个设备可以同时 高效的运行多个虚拟环境,虚拟机是基于寄存器的,所有的类都由java编译器编译,通过sdk中的"dx"工具转化 成.dex格式由虚拟机执行。
Dalvik虚拟机依赖于linux内核的一些功能,比如线程机制和底层内存管理机制
4、linux kernel层
Android的核心系统服务依赖于Linux2.6内核,如安全性,内存管理,进程管理,网络协议栈和驱动模型。Linux内核也同时作为硬件和软件栈之间的抽象层
共同学习,写下你的评论
评论加载中...
作者其他优质文章