android平台及架构简述

android系统的底层是建立在linux系统之上,是由操作系统、中间件、用户界面和应用软件四层组成。该四层确

保了层与层之间的低耦合,当下层发生改变时,上层应用程序无需做任何改变。(关于android的体系结构可以参考

android官方文档),Android平台采用了整合的策略思想,包括底层Linux操作系统、中间层的中间件和上层的Java

应用程序。

android系统主要部分的组成

应用程序层

应用程序层主要存放一些android的应用程序,比如电子邮件客户端、SMS程序、日历、地图、浏览

器、联系人等等一系列的应用。(当然这些应用都是java编写的)

应用程序框架

当我们去编写应用程序时,必不可少的是一定会去调用一些API,那应用程序框架就是提供开发者

去开发应用程序所需的大量的API。应用程序框架除了作为应用程序开发的基础外,也是软件复用的重要手段。

以下所有的应用程序都由一系列的服务和系统组成,包括:

  1、一个可扩展的视图(Views)可以用来创建应用程序,包括列表(lists)、网络(grids)、文本框(text

boxes)、按钮(buttons),甚至是一个可嵌入的Web浏览器。

  2、内容管理器(Content Providers)使得应用程序可以访问另一个应用程序的数据(如联系人数据库),或

者共享它们自己的数据。

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

files)。

  4、一个通知管理器(Notification Manager)使得应用程序可以在状态栏中显示客户通知信息。

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

函数库

android有一套被不同组件所使用的C/C++库的集合。一般应用开发者不能直接去调用这套库集,但可以通

过应用程序框架去调用这些库。

下面列出一些核心的库:

1、系统C库:一个从BSD系统派生出来的标准C系统库,专门为嵌入式linux设备调整过。

2、媒体库:基于PacketVideo的OpenCORE,支持播放一些流行的音频和视频格式,以及查看静态图片。

3、Surface Manager:管理对显示子系统的访问,并对多个应用程序的2D和3D图层机制提供无缝整合。

4、LibWebCore:一个Web浏览器引擎,为android浏览器提供支持。

5、SGL:底层的2D图形引擎。

6、3D libraries:可使用硬件3D加速,也可使用搞定优化的,软件3D加速。

7、FreeType:位图和向量字体显示。

8、SQLite:供所有应用程序使用的,功能强大的轻量级关系数据库。

android运行时

android运行时由两部分组成:android核心库集和Dalvik虚拟机。核心库集提供了java语言核心库所能使用的绝

大部分功能,虚拟机则负责运行android应用程序。

每个android应用程序都运行在单独的Dalvik虚拟机内。

Linux内核

Linux内核提供安全性、内存管理、进程管理、网络协议栈和驱动模型等核心系统服务。Linux内核也是系统硬件

和软件叠层之间的抽象层。

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

转载请注明出处:http://blog.csdn.net/hai_qing_xu_kong/article/details/10995151情绪控

Android之平台架构相关推荐

  1. Android更新平台架构方案

    这篇文章是去年写的,我们的两款app一直这使用umeng的更新服务,但是16年umeng开始放弃更新服务,考虑到切换到其他更新平台也会面临这样的问题,我开始着手自己搭建一个更新平台.整体方案包含前后端 ...

  2. android 更新平台,Android更新平台架构方案

    这篇文章是去年写的,我们的两款app一直这使用umeng的更新服务,但是16年umeng开始放弃更新服务,考虑到切换到其他更新平台也会面临这样的问题,我开始着手自己搭建一个更新平台.整体方案包含前后端 ...

  3. Android学习笔记之Android平台架构和特性

    一.Android的平台架构及特性 Android系统的底层建立在Linux系统之上,该平台由操作系统,中间件,用户界面和应用软件4层组成.采用一种被称为软件叠层的方式进行构建. 1.应用程序层(Sy ...

  4. Android Platform Architecture 安卓平台架构

    Android Platform Architecture 安卓平台架构 Android is an open source, Linux-based software stack created f ...

  5. MTK平台camera bsp学习之android平台架构篇

    android平台架构(简单了解,都是csdn上看其他博客摘抄下来) 从上到下:分为 APP层 framework层 native层 hal层 kernel层 camera bsp侧重点:kernel ...

  6. 全志平台Android系统WIFI架构工作流程分析

    1. 前言 记录个人最近对Android wifi的了解和使用感受, 并为想入门.学习Android wifi的人员提供一定的参考 2. Android系统中的WIFI架构 wifi在Android中 ...

  7. Android之系统架构

    Android 是Google开发的基于Linux平台的开源手机操作系统.它包括操作系统.用户界面和应用程序 -- 移动电话工作所需的全部软件,而且不存在任何以往阻碍移动产业创新的专有权障碍.Andr ...

  8. 怎样搭建Android开发平台(转)

    Android是基于Linux内核的软件平台和操作系统,是Google在2007年11月5日公布的手机系统平台,早期由Google开发,后由开放手机联盟(Open Handset Alliance)开 ...

  9. 安卓学习笔记04:安卓平台架构

    文章目录 零.学习目标 一.安卓平台架构 (一)安卓平台架构简述 1.Linux 内核 2.硬件抽象层 (HAL) 3.安卓运行时(Android Runtime) 4.原生 C/C++ 库 5.Ja ...

最新文章

  1. centos 网卡聚合及Cisco交换机链路聚合
  2. VMware安装CentOS之三——CentOS网络设置及软件安装
  3. Windows下的搜索神器 —— everything
  4. 蚂蚁金服大规模分布式事务实践和开源历程
  5. Sping boot系列--redis之2 -- RedisKeyValueTemplate处理Model对象
  6. vs连接oracle数据库报错,用VS连接oracle数据库时ORA-12504错误
  7. matlab 箱图不显示异常值_无功功率显示值与计算值不匹配?
  8. Redis命令行之Hash
  9. scala切片_Scala切片功能
  10. Moorhuhn Kart 2 XXL Maps
  11. 使用HTML Help Workshop将HTML转为CHM
  12. iOS开发之NSString和UTF-8间的转换
  13. 拓端tecdat|R语言多臂试验 - 我们应该考虑多重性吗?
  14. iOS网络请求架构图URL Loading System
  15. STM32启动代码学习
  16. 羲云社区团购微信小程序 活动详细页 (界面及功能设计)
  17. ai跟随路径_Illustrator描边路径 AI指定数量沿全路径混合小技巧 AI制版文字变粗...
  18. 汽车操作系统攻防综述
  19. aix kill java_AIX环境Java进程cpu瓶颈分析(转)
  20. WEB HLS播放器 及 跨域配置

热门文章

  1. java content()_理解content(一)
  2. ttlsa教程系列之MySQL---MySQL/Galera集群-多主高可用性负载均衡
  3. es6 中的generator函数控制流程
  4. 多态实现机制:静态分派和动态分派
  5. ​rsync应用拓展多模块同步13
  6. 详解基于CentOS6.2下DNS主从复制搭建与部署
  7. 一个智能机器人的语录
  8. 虚拟化入门:用虚拟机安装RHEL 5(下)
  9. 关于Spring Boot你不得不知道的事
  10. cocos对象池的使用