从代码了解AOSP

本文从代码层面探讨AOSP(Android Open Source Project),介绍了AOSP的组成,包括平台/manifest作为入口,详细解析了manifest文件的remote、project、default标签,并通过实例阐述了AOSP的项目结构和下载过程。AOSP由500多个git仓库构成,理解其组成有助于深入理解Android系统的构建。
摘要由CSDN通过智能技术生成

AOSP是什么?

全称是Android Open Source Project,它是整个Android源码的开源项目。
官方地址是:https://android.googlesource.com

如果你下载过源代码,那么对下面的这个指令不会陌生

$ repo init -u https://android.googlesource.com/platform/manifest

这是初始化AOSP的分支,默认情况下为Master。

上面指令里边的地址就是AOSP的原始地址,由于Google被墙的缘故,即使连接上VPN速度也不是很快。这时候我们优先使用国内的镜像源,具体镜像源可以参考我前边的文章Android源代码编译笔记(支持5.x及以上版本)

平常情况下,我们初始化之后就开始sync,然后就是编译,刷机或运行模拟器。
虽然我们也下载编译且运行了AOSP,但是对它的组成还是不清楚。所以,我就边研究边记笔记,从代码上了解AOSP。

AOSP的组成

只写文字太单调了,配一张Android官网的经典Android系统框架图:
android framework

由于Android的系统版本众多,这里以5.1.1版本(分支android-5.1.1_r15,即for Nexus Player)为例来分析一下AOSP的组成(方法对于其它版本是一样的)。

那么它对应的初始化地址就是

https://android.googlesource.com/platform/manifest -b android-5.1.1_r15

这里边仓库所在的服务器是https://android.googlesource.com/,而platform/manifest是仓库的路径,而android-5.1.1_r15则是这个仓库的一个分支。

你如果直接访问上面的路径,会发现它其实是一个git仓库,而clone正是使用这个地址来进行,即

git clone https://android.googlesource.com/platform/manifest

将其clone下来并且切换到android-5.1.1_r15分支后(默认是Master分支)你会发现该仓库只有一个文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值