android 源码目录结构

作者:吕超
链接:https://www.zhihu.com/question/19946250/answer/13440005
来源:知乎
著作权归作者所有,转载请联系作者获得授权。

不需要全部了解,阅读你感兴趣或者与你工作相关的部分就可以了。比如:

顶层目录:
.
|– bionic (bionic库,Android的基础库)
|– bootable (bootloader, recovery等,ROM移植相关)
|– build (编译和配置所需的脚本和工具)
|– dalvik (dalvik的Java虚拟机)
|– development (开发应用程序所需的模板和工具)
|– external (由其他平台移植过来的项目,对于移植工作是非常好的参考)
|– frameworks (应用程序框架层,请仔细阅读此部分代码,对于开发App会有很大帮助)
|– hardware (与硬件相关的库,驱动开发相关)
|– kernel (linux内核)
|– out (编译后生成的目录,包含构建文件系统所需的文件)
|– packages (Android的原生应用程序,App开发者需要重点关注)
|– prebuilt (Android在各平台下编译的预置脚本)
|– system (Android的底层库)
`– vendor / device (设备相关的代码,AOSP里不会有太多涉及,但是CM中却是重点)

external目录:
.
|– aes (ASE加密)
|– apache-http (网页服务器)
|– bison (自动生成语法分析器,将无关文法转换为C,C++)
|– bluez (Linux下的蓝牙工具)
|– bsdiff (diff工具)
|– bzip2 (压缩工具)
|– clearsilver (html模板系统)
|– dbus (低延时,低开销,高可用性的IPC机制)
|– dhcpcd (DHCP服务)
|– dosfstools (DOS文件系统工具)
|– dropbear (SSH2的服务器/客户端)
|– e2fsprogs (EXT2文件系统工具)
|– elfcopy (ELF复制工具)
|– elfutils (ELF工具)
|– embunit
|– emma (Java代码覆盖率统计工具)
|– esd (将多种音频流混合在一个设备上播放)
|– expat
|– fdlibm
|– freetype (字体)
|– gdata (google的无线数据)
|– genext2fs
|– giflib (gif库)
|– googleclient (google用户库)
|– grub
|– icu4c
|– iptables (防火墙)
|– jdiff
|– jhead (jpeg头部信息工具)
|– jpeg (jpeg库)
|– libffi
|– libpcap (网络数据包捕获函数)
|– libpng (png库)
|– libxml2 (xml解析库)
|– netperf (网络性能测试工具)
|– opencore (多媒体框架,最让人诟病的模块,Andoird 4.0中已被 stagefright 取代)
|– openssl (SSL模块,需要注意的是一定要静态编译此模块,否则会出现兼容问题)
|– qemu (Android 模拟器,Android 4.0之前只支持 arm-eabi,现在已支持 arm-v7)
|– skia (SKIA图像引擎)
|– sqlite (数据库)
|– strace (调试跟踪工具)
|– tcpdump (TCP抓包软件)
|– webkit (浏览器核心)
|– wpa_supplicant (无线网卡管理)
|– yaffs2 (yaffs文件系统)

参考: cnrgb.com/android-sourc (做了一些修改,原文比较老了)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值