安卓源码分析(一)目录说明
系统根目录说明
- art 全新的ART运行环境
- boinic 系统c库
- bootable 启动引导相关代码
- build 存放系统编译规则及generic等基础开发包配置
- cts Android兼容性套件标准
- dalvik Dalvik虚拟机
- developers 开发者目录
- development 与应用程序开发相关
- device 设备相关配置
- docs 参考文档目录
- external 开发模组相关组件
- frameworks 应用程序框架,Android系统核心部分,由Java和c++书写
- hardware 主要是硬件抽象层代码
- libcore 核心库相关文件
- libnativehelper 动态库,实现JNI库的基础
- out 编译完毕后代码在此输出
- pdk Plug Development 的缩写,本地开发套件
- platform testing 平台测试
- prebuilts X86 ARM 架构下预编译的 些资源
- sdk SDK 和模拟器
- packages 应用程序包
- system 底层文件系统库、应用和组件
- toolchain 工具链文件
- tools 工具文件
- Makefile 全局Makefile,用来定义全局编译规则
应用层目录
应用层位于整个 Android 系统的最上层,开发者开发的应用程序以及系统内置的应用
程序都在应用层。源码根 目录中的 packages 目录对应着系统应用层
- apps 核心应用库
- inputmethods 输入法目录
- providers 内容提供者目录
- screensavers 屏幕保护
- services 通信服务
- wallpapers 墙纸
应用框架部分
应用框架层是系统的核心部分,一方面向上提供接口给应用层调用,另 方面向下与
C/c++程序库及硬件抽象层等进行衔接。应用框架层的主要实现代码在 frameworks/base
frameworks/av 目录下,其中 frameworks/base 目录如下
- api 定义API
- cmds 重要命令:am,app_proce等
- core 核心库
- data 字体和声音等数据文件
- docs 文档
- graphics 与图形图像相关
- keystore 与数据签名相关
- libs 库
- location 地理位置相关库
- media 多媒体相关库
- native 本地库
- nfc-extras 与NFC相关
- obex 蓝牙传输
- opengl 2D3D图形API
- packages 设置,TTS,VPN程序
- sax XML解析器
- sevices 系统服务
- telephony 电话通信管理
- test-runner 测试工具相关
- tests 与测试相关
- tools 工具
- wifi WiFi无线网络
C/C++程序部分
系统运行库层(Native )中的 IC++程序库的类型繁多, 功能强大, IC++程序库并不完
全在一个目录中,这里给出几个常用且 较重要的 CIC++程序库所在的目录位置
- bionic Google开发的系统C库,以BSD形式许可开源
- frameworks\av\media 系统媒体库
- frameworks\native\opengl 第三方图形渲染库
- frameworks\native\services\surfaceflinger 图形显示库,主要负责图形的渲染、叠加和绘制等功能
- external\sqlite 轻量级数据库SQLite的C++实现
参考 刘望舒的《Android进阶解密》
(这本书是基于android8的,部分在11及以上目录做了部分修改,后续会补充)
安卓源码分析(一)目录说明相关推荐
- 【SemiDrive源码分析】【X9芯片启动流程】08 - X9平台 lk 目录源码分析 之 目录介绍
[SemiDrive源码分析][X9芯片启动流程]08 - X9平台 lk 目录源码分析 之 目录介绍 一./rtos/lk/ 目录结构分析 1.1 /rtos/lk_boot/ 目录结构分析 1.2 ...
- v65.05 鸿蒙内核源码分析(挂载目录) | 为何文件系统需要挂载 | 百篇博客分析OpenHarmony源码
子曰:"君子成人之美,不成人之恶.小人反是." <论语>:颜渊篇 百篇博客系列篇.本篇为: v65.xx 鸿蒙内核源码分析(挂载目录篇) | 为何文件系统需要挂载 文件 ...
- C++Primer Plus (第六版)阅读笔记 + 源码分析【目录汇总】
C++Primer Plus (第六版)阅读笔记 + 源码分析[第一章:预备知识] C++Primer Plus (第六版)阅读笔记 + 源码分析[第二章:开始学习C++] C++Primer Plu ...
- openstack nova 源码分析3-nova目录下的service.py
nova下的service.py的源码,今天阅读之后 直接就把我理解的以注释的形式添加到了源码中,有些地方不好或者是错了,希望大家帮我指出! import inspect import os impo ...
- jQuery源码分析系列目录
jQuery是对JavaScript的最佳实践的产物,这么好的东西阅读后一定会有感悟,还是要拿出来和大家分享滴,从今天开始阅读jQuery并将笔记进行记录,每天更新 1. 简便使用jQuery-源码阅 ...
- openstack nova 源码分析4-nova目录下的driver.py
还是有许多地方可能错了 希望大婶们 看见 给予意见 ! 这个文件位于\nova\virt,是一个底层的driver.py,源代码如下(和以前一样添加了些注释,另外把我 觉得比较重要的computerD ...
- 【SemiDrive源码分析】【X9芯片启动流程】30 - AP1 Android Kernel 启动流程 start_kernel 函数详细分析(一)
[SemiDrive源码分析][X9芯片启动流程]30 - AP1 Android Kernel 启动流程 start_kernel 函数详细分析(一) 一.Android Kernel 启动流程分析 ...
- Android屏幕刷新——源码分析
Android屏幕刷新原理--源码分析 文章目录 Android屏幕刷新原理--源码分析 概述 VSync信号 三级缓冲 源码分析 消息队列的同步屏障 参考资料 概述 Android系统每16ms(一 ...
- 【Android 事件分发】ItemTouchHelper 源码分析 ( OnItemTouchListener 事件监听器源码分析 )
Android 事件分发 系列文章目录 [Android 事件分发]事件分发源码分析 ( 驱动层通过中断传递事件 | WindowManagerService 向 View 层传递事件 ) [Andr ...
最新文章
- MVC3异常处理的方法
- ST-3806系列单圈编码器 测试说明
- Oracle四舍五入,向上取整,向下取整
- C#之windows桌面软件第十二课:电脑ADC值显示(上位机),记忆上次串口号,并用TrackBar控件显示ADC值
- LeetCode 27移除元素28实现strStr()29两数相除
- 8086中断系统——《x86汇编语言:从实模式到保护模式》读书笔记04
- 论文推荐 | 2019中国卫星导航年会论文集
- 2018蓝桥杯省赛---java---B---3(复数幂)
- ajax保存乱码,Ajax 乱码详细
- Linux下MongoDB安装和配置详解
- ​瑞幸员工如何作假22亿,怎样用技术防止财务造假?
- 【Android 逆向】Android 逆向通用工具开发 ( PC 端工具 hacktool 启动 main 函数分析 | hacktool 工程中的核心类 HackCommand 分析 )
- 中国北斗卫星导航系统
- 如何获取网页logo(favicon.ico)
- pycharm双击打不开,没有反应,下列方法亲测有用!
- 哀悼日,不发布文章(技术类)!为逝者哀悼!
- python 爬虫软件第一个程序
- springMVC + Dubbo + zooKeeper超详细 步骤
- FTP主动模式和被动模式图解
- 秒杀系统常用的削峰方法