1. 根目录

instruction:Master-android - eLinux.org

文件夹名 内容
art 全新的ART运行环境
bionic 系统C库
bootable 系统启动引导代码
build 存放Android系统编译规则,以及generic等基础开发配置包。
cts Android 兼容性测试套件标准
dalvik Dalvik虚拟机
developers 开发者目录,包含构建App和一些demo代码
development 与应用成虚开发相关
device 设备相关配置
docs 参考文档目录
external 开源模组相关文件,一些开源第三方组件,例如:glide、junit、dagger2等
frameworks 应用程序框架,Android系统核心部分,由Java和C++编写
hardware 主要包含了 android HAL(硬件抽象层)相关代码。硬件抽象层介于 Linux内核驱动程序与 Android 系统之间。对 Linux 驱动进行了封装,使操作系统级别可以忽略底层实现的细节
libcore 核心库相关文件
libnativehelper 动态库,实现JNI库的基础
out 编译完成后生成的所有都在这里
pdk Platform Development kit的缩写,平台开发套件,仅包含了一些供硬件抽象层开发使用的必要组件,供一些 OEM 厂商用来适配及测试最新的Android 系统,加快第三方厂商的更新速度。
加快OEM厂商的update速度
platform_testing 平台测试
prebuilts x86和ARM架构下预编译的一些资源
sdk sdk和模拟器
packages 系统应用程序包
system 底层文件系统库,应用和组件
toolchain 工具链文件
tools 工具文件
vendor 包含不同供应商的私有的二进制库
makefile 全局Makefile文件,用来定义编译规则

2.Bootable

文件夹名 内容
libbootloader 为boot引导系统启动
recovery 恢复模式系统,系统升级等等

frameworks 应用框架层

应用框架层是系统的核心部分,向上提供接口给应用层调用,向下与c/c++程序库以及硬件抽象层衔接,其主要实现代码在frameworks/base 和 frameworks/av下

frameworks/base

文件夹名 内容 文件夹名 内容
api 定义api cmds 重要命令:am\app_procee等
core 核心库 data 字体和声音等文件
docs 文档 graphics 与图形图像相关
include 头文件 keystore 与数据签名证书相关
libs location 地理位置相关
media 多媒体库 native 本地库
nfc-extras 与NFC相关 obex 蓝牙传输
opengl 2D/3D图形API packages 设置TTS、VPN程序
sax xml解析器 services 系统服务
telephony 电话通信管理 test-runner 测试工具相关
tests 与测试相关 tools 工具
vr 与VR相关 wifi wifi无线网络

3.packages应用层部分

文件夹名 内容
apps 核心应用程序,例如:蓝牙、浏览器、相机、邮件、音乐、NFC
experimental 第三方应用程序
inputmthods 输入法目录
providers 内容提供目录,例如:MediaProvider、DownloadProvider、MmsProvider
screensavers 屏幕保护目录
services 通信服务
wallpapers 墙纸

4.C/C++程序库部分

系统运行库层native中C/C++程序库类型繁多,功能强大,他们并不完全在一个目录中,这里是几个C/C++的重要的程序库所在的目录位置

目录位置 内容
bionic Google开发的系统C库,以BSD许可形式开源
frameworks/av/media 系统媒体库
frameworks/native/opengl 第三方图形渲染库
frameworks/native/serevices/surfaceflinger 图形显示库,负责图形渲染、叠加、绘制等
external/sqlite 轻量级关系型数据库SQLite的C++实现

5. out目录

5.1  .module_paths目录

在/build/soong/cmd/soong_ui/main.go中的main函数中调用build.FindSources(buildCtx, config, f)

在device、vendor、product目录中查找AndroidProducts.mk文件。并将所有的名为AndroidProducts.mk文件路径记录在AndroidProducts.mk.list中。这函数的作用不止如此,还会查找Android.mk、Android.bp、CleanSpec.mk等文件

5.Android架构层级和代码目录的大致对应关系

架构层级 代码目录
Application层 packages/apps/
Framework层 framewordks/
Libraries层 运行库libraries--bilnic/
Android Runtime  art/  dalvik/  libcore/
HAL层 hardware/
Linux Kenel kernel/

Android源码 目录相关推荐

  1. Android源码目录结构分析

    Android源码目录结构分析(知识笔记) 根目录结构: |-- Makefile |-- abi |-- art |-- bionic (bionic C库) |-- bootable (启动引导相 ...

  2. Android 源码目录结构

    android平台四层架构对应源代码中的目录: 第一层:应用程序层(applications)对应根目录下packages/apps 第二层:应用程序框架层(application framework ...

  3. Android 10 根文件系统和编译系统(四):Android源码目录结构

    配套系列教学视频链接: Android 10.0 AOSP源码编译: https://www.100ask.net/detail/p_60a1e037e4b0adb2d864c6d8/6 Androi ...

  4. Android源码目录结构详解(转载)

    转自:http://blog.csdn.net/xiangjai/article/details/9012387 在学习Android的过程中,学习写应用还好,一开始不用管太多代码,直接调用函数就可以 ...

  5. 最全的Android源码目录结构详解

    Android 2.1 |-- Makefile |-- bionic                        (bionic C库) |-- bootable                ( ...

  6. Android源码目录结构-4.0

    Android 4.0 |– Makefile |– bionic (bionic C库) |– bootable (启动引导相关代码) |– build (存放系统编译规则及generic等基础开发 ...

  7. Android源码目录结构,以Android2.1为例

    这是Android2.1的源代码的目录结构,可以帮助我们研究Android的源代码.Android源代码的下载请参考官网 Android 2.1  |-- Makefile  |-- bionic   ...

  8. android 目录详解,Android源码目录结构详解

    Android 4.0 |-- Makefile |-- bionic (bionic C库) |-- bootable (启动引导相关代码) |-- build (存放系统编译规则及generic等 ...

  9. Android源码目录分析【转】

    本文转载自:http://blog.csdn.net/backgarden_straw/article/details/8050783 在学习Android的过程中,学习写应用还好,一开始不用管太多代 ...

  10. Android源码目录结构,已获千赞

    |-- testrunner                        (?测试用) `-- tools                                (一些工具) externa ...

最新文章

  1. Android面试收集录12 View测量、布局及绘制原理
  2. strtol,strtoll,strtoul, strtoull函数的使用
  3. ubuntu安装proxychains及自动补全
  4. datasnap资料
  5. halcon三种模板匹配方法
  6. 73. 文件上传(2)
  7. c语言编程简单好玩的图,几个有趣的画图编程
  8. 射线包含于凸集的充要条件
  9. ios定位权限plist_iOS(定位一)后台定位和前台定位权限设置
  10. R plot图片背景设置为透明_万能转换:R图转成Word、PPT、Excel、HTML、Latex、矢量图等...
  11. Latex 中文配置解析
  12. 数据分析~中国五大城市PM2.5数据分析01
  13. Linux挂载ISO镜像文件的两种方式
  14. 分布式系统中Topology(Rack) Awareness的实现思路
  15. (python 3)1040 有几个PAT (25分)
  16. TIA Protal 精智面板中的动画外观
  17. powerpoint预览_如何添加,删除和重新排列PowerPoint幻灯片
  18. 基于JAVA环巢湖区域旅游网站计算机毕业设计源码+数据库+lw文档+系统+部署
  19. 汉语言专家级C1,汉语言文学专业审核(文科生均可参考)
  20. Word2016论文引用

热门文章

  1. matlab——imhist和histeq函数
  2. 电脑 手机 模拟器IP地址怎么更换
  3. 破解点评网字体反爬,深入挖掘系统背后的原理
  4. C#—— 身份证验证方法
  5. matlab查询函数用法,matlab函数用法总结
  6. 京委本圣经的历史考证
  7. 图像处理农业应用sci_SCI/SSCI期刊资源(4月20日更新)
  8. AVR单片机学习笔记
  9. Linux无法下载GCC
  10. win10误删的注册表能还原吗_win10电脑注册表修改后如何恢复