问题描述
简单问题:如何在linux mint上使用repo工具下载android操作系统源代码8.0.0版?
详细:
我想下载安卓源代码。编辑一些代码,然后将其安装到设备上。我安装了一个 linux 操作系统,并下载/初始化了 repo。但是,对于我的一生,我无法理解如何使用 REPO。
我使用操作系统标签:OPR4.170623.009。这是android-8.0.0_r16奥利奥
这是下面的命令:
repo sync [OPR4.170623.009]
我得到了这个结果
... A new version of repo (2.12) is available.
... You should upgrade soon:
cp /home/k/.repo/repo/repo /home/k/bin/repo
error: project [OPR4.170623.009] not found
我什至尝试过
repo sync [<OPR4.170623.009>]
我得到了
bash: OPR4.170623.009: No such file or directory
这很奇怪,因为“下载源代码”页面实际上并不是关于如何实际下载源代码的页面。 (https://source.android.com/setup/build/downloading#initializing-a-repo-client)。看起来我应该使用同步和“源代码标签”。但是它没有说明如何将这两者放在一起:
这里:
repo sync [project0 project1 ... projectn]
repo sync [/path/to/project0 ... /path/to/projectn]
解决方法
您要下载的版本必须指定为 repo init
,而不是 repo sync
。此外,版本是使用标签指定的,而不是构建 ID(this 列表中的第二列)。
因此您必须采取的步骤如下:
-
使用您想要的构建标记(例如
android-8.0.0_r16
)初始化存储库:repo init -u https://android.googlesource.com/platform/manifest -b android-8.0.0_r16
-
同步存储库:
repo sync --jobs=32 --current-branch --no-tags --quiet
传递给
repo sync
的附加标志不是必需的,但可能会有所帮助:标志--jobs=32
将尝试并行下载 32 次(根据您的网络带宽进行调整)。标志--current-branch
将仅下载您在repo init
期间指定的分支。标志--no-tags
将禁止下载标签数据。使用标志--quiet
只会显示整体下载进度。
一般注意事项:您表示要将图像刷入设备。请注意,您的设备可能需要在映像中包含特定于设备的驱动程序。这些驱动程序通常不是 AOSP 的一部分。此外,您的设备可能有一个锁定的引导加载程序,不允许刷新自定义图像。我无法提供更多详细信息,因为我不知道您所针对的设备。