博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android源码阅读小技巧
阅读量:6214 次
发布时间:2019-06-21

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

要从一个初级Android开发工程师,晋级到Android高级工程师,源码阅读是不可或缺的一环。而Android源码非常复杂,涉及到很多个模块。比如Android5.1的目录结构如下:

而目录下面还有更多的文件,阅读起来非常费解。因此笔者搜集了一些资料,同时根据自身开发经验,总结了一些简单的目录说明大纲文档供大家查阅,希望能帮到大家。

Java部分

  1. abi 应用程序二进制入口 
  2. art 全新的ART运行环境(5.0系统后替代Dalvik虚拟机)
  3.  bionic 系统C库 
  4. bootable 启动引导相关代码 
  5. build 存放系统编译规则及generic等基础开发包配置 
  6. cts Android兼容性测试套件标准 
  7. dalvik dalvik虚拟机 
  8. developers 开发者目录 
  9. development 应用程序开发相关 
  10. device 设备相关配置 
  11. docs 参考文档目录 
  12. external 开源模组相关文件 
  13. frameworks 应用程序框架,Android系统核心部分,由Java和C++编写 
  14. hardware 主要是硬件抽象层的代码 
  15. libcore 核心库相关文件 libnativehelper 动态库,实现JNI库的基础 
  16. ndk NDK相关代码,帮助开发人员在应用程序中嵌入C/C++代码 
  17. out 编译完成后代码输出在此目录 
  18. packages 应用程序包,对应着系统的应用层 
  19. pdk Plug Development Kit缩写,本地开发套件 
  20. platform_testing 平台测试 
  21. prebuilds x86和arm架构下预编译的一些资源 
  22. sdk sdk和模拟器 
  23. system 底层文件系统库、应用和组件 
  24. toolchain 工具链文件 tools 工具文件
  25.  Makefile 全局Makefile文件,用来定义编译规则 

C/C++程序部分

 系统运行库层(Native)中的 C/C++程序库的类型繁多,功能强大,C/C++程序库并不完全在一个目录中,几个常用且比较重要的C/C++程序库所在的目录位置: 
  1. /bionic/ Google开发的系统C库,以BSD许可形式开源 
  2. /frameworks/av/media 系统媒体库 
  3. /frameworks/native/opengl 第三方图形渲染库 
  4. /framework/native/services/surfaceflinger 图形显示库,主要负责图形的渲染、叠加、绘制等功能 
  5. /external/sqlite 轻量型关系数据库SQLite的C++实现。
上面的总结可能不全,只是一些常用到的基本都涵盖了。同时,如果有疏漏也欢迎指出修改。也希望各位在前往高级工程师的道路上越走越顺。

转载地址:http://evcja.baihongyu.com/

你可能感兴趣的文章
给 Android 开发者的 RxJava 详解
查看>>
Html元素
查看>>
Kali安装OWTF、PIP、tornado
查看>>
IOS UIWebView调用H5页面后退方法出现“about:blank”
查看>>
12. Integer to Roman
查看>>
dubbo之hessian序列化数据丢失
查看>>
ARM嵌入式Linux系统开发详解(第2版)
查看>>
Ubuntu failed to run the android sdk manager
查看>>
centos环境下php7安装记录
查看>>
centos yum错误
查看>>
JAVA NIO Connection reset by peer 异常
查看>>
Mac不支持写NTFS
查看>>
一列中显示不同的编辑风格
查看>>
flex 学习笔记 graphics(一)
查看>>
我的友情链接
查看>>
我的友情链接
查看>>
Android实现圆角边框
查看>>
日报社金笛邮件系统数据存储及备份方案--2
查看>>
CentOS6.5下添加epel源
查看>>
win10 安装ftp服务
查看>>