Android 13源码下载

参考文章
https://blog.csdn.net/devnn/article/details/131868022?spm=1001.2014.3001.5506

清华源不可用时使用

root@DESKTOP-1VVCCHG:/home/zhd/aosp_13# repo init -u https://mirrors.ustc.edu.cn/aosp/platform/manifest -b android-13.0.0_r60

Downloading Repo source from https://mirrors.tuna.tsinghua.edu.cn/git/git-repo

fatal: unable to access 'https://mirrors.tuna.tsinghua.edu.cn/git/git-repo/': The requested URL returned error: 403

repo: error: "git" failed with exit status 128

cwd: /home/zhd/aosp_13/.repo/repo.tmp

cmd: ['git', 'fetch', '--quiet', '--progress', 'origin', '+refs/heads/*:refs/remotes/origin/*', '+refs/tags/*:refs/tags/*']

fatal: double check your --repo-rev setting.

fatal: cloning the git-repo repository failed, will remove '.repo/repo'

看起来你在使用中科大镜像初始化 AOSP 13 代码库时遇到了 403 访问被拒绝的错误。这个问题通常与镜像站的访问限制或网络配置有关,我会帮你一步步解决。

下面这个表格汇总了核心的解决方案,你可以根据实际情况尝试。

解决方向 具体方法 适用场景
统一镜像源 设置 REPO_URL环境变量,让 repo工具也从中科大镜像下载。 从混合使用镜像源(如AOSP用中科大,repo工具用清华)导致的认证问题。
彻底清理重试 删除 .repo目录,重新执行初始化命令。 初始化过程中断,残留的临时文件导致后续尝试失败。
调整网络配置 降低并发连接数,或检查代理和hosts设置。 镜像服务器对单IP的并发请求数有限制,或网络环境有特殊配置。
使用离线包 下载中科大提供的AOSP月度打包快照。 网络环境不稳定,希望通过HTTP(S)断点续传完成大部分数据下载。

🔧 解决方案详解

1. 设置Repo工具镜像源

你遇到的错误信息显示,虽然你指定了中科大的AOSP镜像,但 repo工具自身仍然在尝试从清华镜像站下载它的更新,这可能导致了一些冲突。最直接的解决方案是统一镜像源

  • 设置环境变量 :在执行 repo init命令前,先设置 REPO_URL环境变量,告诉 repo工具也从中科大镜像获取更新 。

    复制代码
    export REPO_URL='https://mirrors.ustc.edu.cn/aosp/git-repo'
  • 使其永久生效 :为了避免每次打开新终端都需要设置,可以将这行命令添加到你的 ~/.bashrc~/.zshrc文件末尾,然后执行 source ~/.bashrc

设置完成后,再重新运行你的初始化命令。

2. 清理现场并重新初始化

如果之前的初始化尝试失败了,可能会留下一些不完整的临时文件,干扰下一次尝试。在调整环境变量后,一个干净的重试通常能解决问题。

  • 删除残留目录 :在AOSP源码目录下,删除初始化生成的 .repo文件夹。

    复制代码
    rm -rf /home/zhd/aosp_13/.repo
  • 重新初始化:再次执行初始化命令。

    复制代码
    repo init -u https://mirrors.ustc.edu.cn/aosp/platform/manifest -b android-13.0.0_r60
3. 调整网络和并发设置

403错误有时也因为镜像服务器对单个IP的并发连接数有限制(例如中科大镜像建议每IP不超过5个连接),以防止滥用 。

  • 降低并发数 :在同步时,显式指定较少的并发任务数。你可以尝试使用更小的数字,如 -j2

    复制代码
    repo sync -j2
  • 检查代理和hosts设置 :如果你处于需要网络代理的环境(如公司网络),请确保已正确配置代理环境变量。反之,如果你不需要代理,请检查是否设置了 HTTP_PROXYHTTPS_PROXY等环境变量,临时取消它们再试 。同时,检查 /etc/hosts文件,确保没有强制将镜像站域名指向某个可能不可用的IP地址。

4. 使用离线包(终极方案)

如果网络始终不稳定,最可靠的方法是使用中科大镜像提供的AOSP月度打包快照。这是一个约80GB的完整tar包,支持HTTP(S)下载,具备断点续传功能,非常适合网络条件差的情况 。

  1. 下载打包快照 :从 https://mirrors.ustc.edu.cn/aosp-monthly/下载最新的 aosp-latest.tar文件。

  2. 解压:解压后会得到一个包含完整AOSP代码历史的目录。

  3. 切换到指定分支 :进入解压后的目录,执行初始化命令切换到你需要android-13.0.0_r60分支即可。

    复制代码
    tar xf aosp-latest.tar
    cd aosp-2024-03-01  # 解压后生成的目录名
    repo init -u https://mirrors.ustc.edu.cn/aosp/platform/manifest -b android-13.0.0_r60
    repo sync

💡 试试这样操作

我建议你按顺序尝试以下步骤,这通常能解决大部分问题:

  1. 首先,设置环境变量并清理重试。这是最常见有效的办法。

    复制代码
    export REPO_URL='https://mirrors.ustc.edu.cn/aosp/git-repo'
    rm -rf /home/zhd/aosp_13/.repo
    repo init -u https://mirrors.ustc.edu.cn/aosp/platform/manifest -b android-13.0.0_r60
  2. 如果上述步骤仍然报错 ,在执行 repo sync时加上 -j2参数,降低并发数。

  3. 如果问题持续,检查你的网络环境,暂时取消任何代理设置。

  4. 作为最后的备选方案,考虑下载离线打包快照,这是绕过网络问题最彻底的方式。

相关推荐
Android-Flutter11 小时前
android compose PullToRefreshAndLoadMore 下拉刷新 + 上拉加载更多 使用
android·kotlin
似霰11 小时前
HIDL Hal 开发笔记4----Passthrough HALs 实例分析
android·framework·hal
louisgeek12 小时前
Git 查询 Tag 列表
android
诸神黄昏EX12 小时前
Android Safety 系列专题【篇二:keystore安全架构】
android
撩得Android一次心动12 小时前
Android 架构模式的演变(MVC、MVP、MVVM、MVI)
android·架构·mvc·mvvm·mvp
与水同流12 小时前
GNSS数据格式
android
Mars-xq13 小时前
Android godot 交互数据监听
android·godot·交互
_李小白13 小时前
【Android FrameWork】延伸阅读: PowerManagerService
android
_李小白14 小时前
【Android 性能分析】第四天:CPU Profiler
android