Android8.1源码目录分析

一、整体结构
Android源码根目录    描述
art    ATR运行环境
bionic    系统C库
bootable    启动引导相关代码
build    存放系统编译规则及generic等基础开发包配置
cts    Android兼容性测试套件标准
dalvik    Dalvik虚拟机
developers    开发者目录
development    与应用程序开发相关
device    设备相关配置
docs    参考文档目录
external    开源模组相关文件
frameworks    应用程序框架,Android系统核心部分,由Java和C++编写
hardware    硬件抽象层相关代码
libcore    核心库相关文件
libnativehelper    动态库,实现JNI库的基础
out    编译完成后在此目录输出成果物
pdk    本地开发套件
platform_testing    平台测试
prebuilts    X86和ARM架构下预编译的一些资源
sdk    SDK和模拟器
packages    应用程序包
system    底层文件系统库、应用和组件
toolchain    工具链文件
tools    工具文件
Makefile    全局Makefile文件,用来定义编译规则
二、应用层部分
应用层位于Android系统最上层,开发者开发的应用程序以及系统内置的应用程序都在应用层。

源码根目录中的 packages 目录对应着系统的应用层。

packages目录    描述
apps    核心应用程序
experimental    第三方应用程序
inputmethods    输入法目录
providers    内容提供者目录
screensavers    屏幕保护
services    通信服务
wallpapers    墙纸
 三、应用框架层部分
应用框架层的主要实现代码在 framworks/base 和 frameworks/av 目录下。

framworks/base目录结构如下:

framworks/base目录    描述
api    定义API
core    核心库
docs    文档
include    头文件
libs    库
media    多媒体相关库
nfc-extras    与NFC相关
opengl    
2D/3D图形API

sax    XML解析器
telephony    电话通信管理
tests    测试相关
vr    VR相关
cmds    重要命令:am、app_proce等
data    字体和声音等数据文件
graphics    图形图像相关
keystore    数据前面证书相关
location    地理位置相关库
native    本地库
obex    蓝牙传输
packages    设置、TTS、VPN程序
services    系统服务
test-runner    测试工具相关
tools    工具
wifi    WIFI相关
四、C/C++程序库部分
列举几个比较重要的、常用的

位置    描述
bionic    Google开发的系统C库
framework/av/media    系统媒体库
framework/native/opengl    第三方图形渲染库
framework/native/services/surfaceflinger    图形显示库,主要复制图形的渲染、叠加和绘制等
external/sqlite    
SQLite数据库的C++实现

五、硬件抽象层 HAL部分
改动最大的部分,不同厂商不同平台的实现不同。
————————————————

                            版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
                        
原文链接:https://blog.csdn.net/lzz214/article/details/135135841

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值