博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
android framework浅析_转
阅读量:5906 次
发布时间:2019-06-19

本文共 1198 字,大约阅读时间需要 3 分钟。

 Android系统从底向上一共分了4层,每一层都把底层实现封装,并暴露调用接口给上一层。

1. Linux内核(Linux Kernel)

       1)Android运行在linux kernel 2.6之上,但是把linux内受GNU协议约束的部分做了取代,这样在Android的程序可以用于商业目的。

       2)Linux 内核是硬件和软件层之间的抽象层。

       3)系统总是需要操作系统的支持的,比如内存管理、进程管理、网络协议栈等

 2. 中间件(即android 的C/C++框架)

       1)包括两部分:核心库和运行时(libraries & Android runtime)

       2)核心库包括,SurfaceManager 显示系统管理库,负责把2D或3D内容显示到屏幕;Media Framework 媒体库,负责支持图像,支持多种视频和音频的录制和回放;SQlite 数据库,一个功能强大的轻量级嵌入式关系数据库;WebKit 浏览器引擎等。

       3)Dalvik虚拟机:区别于Java虚拟机的是,每一个Android 应用程序都在它自己的进程中运行,都有一个属于自己的Dalvik 虚拟机,这一点可以让系统在运行时可以达到优化,程序间的影响大大降低。Dalvik虚拟机并非运行Java字节码,而是运行自己的字节码。 

其中

    SurFace Manager:显示子系统的管理器

    LibWebCore:web 浏览器引擎,支持android 浏览器
    SGL:skia 图形库,底层的2D 图形引擎
   3D 库:OpenGL
   FreeType:字体显示 

 3. 应用程序框架(Application Framework)

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

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

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

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

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

4. 应用程序 (Applications)

       Android 系统会内置一些应用程序包包括email 客户端,SMS 短消息程序,日历,地图,浏览器,联系人管理程序等。所有的应用程序都是使用JAVA 语言编写的,不支持C 开发,所谓支持C 开发是指jni 的形式

转自:http://www.cnblogs.com/xueshui20/p/4244641.html

你可能感兴趣的文章
基于node环境的一些新词语定义
查看>>
css3代码书写规范
查看>>
Oracle 11g物理Active Data Guard实时查询(Real-time query)特性
查看>>
python实战系列之RTX发送告警消息(四)
查看>>
理解 Glance - 每天5分钟玩转 OpenStack(20)
查看>>
用 ConfigMap 管理配置 - 每天5分钟玩转 Docker 容器技术(159)
查看>>
MySQL局域网访问配置
查看>>
我的友情链接
查看>>
eclipse 去掉 js 校验
查看>>
ASA防火墙5 安全context
查看>>
Selenium-Python小记(一)
查看>>
我最喜爱的新工具:Oracle VM VirtualBox
查看>>
我的开源项目:Android图片剪裁库
查看>>
ceph常见故障-ceph activate,osd无权限
查看>>
Shell 获取 Linux 服务器的 MAC(通用,不依赖网卡名称)
查看>>
C语言程序设计复习指导
查看>>
Linux 文件通配符与命令行扩展
查看>>
作为程序员你必须要知道的Android特效!
查看>>
pl/sql三种特殊数据类型
查看>>
zabbix server is not running解决办法
查看>>