架构图如下:

1)英文版:

Android系统架构的简单描述

2)中文版:

Android系统架构的简单描述

  由图可知:Android 系统架构从下到上分为 Linux内核层、中间件、 应用程序框架层和应用程序层。

  1、Linux kernel

    负责硬件的驱动程序、网络、电源、系统安全以及内存管理等功能。

  2、中间件:核心库和运行时(libraries & Android runtime)

    1)核心库

       即c/c++函数库部分,大多数都是开放源代码的函数库,例如webkit(引擎),该函数库负责 android网页浏览器的运行,例如 标准的 c 函数库libc、openssl、sqlite等,当然也包括支持游戏开发2dsgl和 3dopengles,在多媒体方面有mediaframework框架来支持各种影音和图形文件的播放与显示。

    2)运行时

       区别于Java虚拟机的是,每一个Android 应用程序都在它自己的进程中运行,都有一个属于自己的Dalvik 虚拟机,这一点可以让系统在运行时可以达到优化,程序间的影响大大降低。Dalvik虚拟机并非运行Java字节码,而是运行自己的字节码。负责解释和执行生成的dalvik格式的字节码。

  3、应用程序框架层

    java应用程序开发人员主要是使用该层封装好的api进行快速开发。该层主要有:

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

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

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

 4)通知管理器(Notification Manager) 使得应用程序可以在状态栏中显示自定义的提示信息。

5)活动管理器(Activity Manager) 用来管理应用程序生命周期并提供常用的导航回退功能。

  4、应用程序层

      Android系统会内置一些应用程序包 包括email 客户端,SMS 短消息程序,日历,地图,浏览器,联系人管理程序等。Android 应用程序使用框架的api并在框架下运行,所有的应用程序都是使用JAVA 语言编写的。

  

总结:

   下层为上层服务,上层需要下层的支持,调用下层的服务,这种严格分层的方式带来的极大的稳定性、灵活性和可扩展性,使得不同层的开发人员可以按照规范专心特定层的开发。

更多相关文章

  1. Android快速开发框架之xUtils---图片模块
  2. Android应用程序组件Content Provider的共享数据更新通知机制分
  3. Android之使用Android-query框架进行开发(二)
  4. Android常用的15个框架
  5. 六款值得推荐的android(安卓)开源框架简介
  6. Android-网络框架04Retrofit2.0+RxJava
  7. Android 将自己的应用程序改成系统的应用程序
  8. 【Android开源项目分析】android轻量级开源缓存框架——ASimpleC
  9. android应用 小试牛刀 开发自己的应用程序就是这么简单

随机推荐

  1. Android P SystemUI添加VoWiFi Tile
  2. android录音和得到音量
  3. Android综合小练习Fragment,解析,Handler
  4. Android动态添加删除recycleview并动态保
  5. android 系统文件目录结构
  6. Android仿美图秀秀给图片加框
  7. Android:计算剩余内存
  8. Android切换横屏竖屏生命周期变化
  9. Android 启动Tomcat服务报错,端口占用解决
  10. Android开发教程 如何优化andriod布局