在Android开发过程中,经常需要查看Android的源代码。而在下载的SDK中,有各个Platform版本的Framework层的源代码下载,而这些源代码是不完整的,没有C/C++的代码。我们需要下载完整的Android的源代码。
Google提供的源代码的官网是:https://source.android.com/(需要梯子)
里面有很详细的下载源代码的步骤:https://source.android.com/source/downloading.html
在2011年8月的时候,我使用Ubuntu下载成功了Android的源代码。时隔4年多的时间,我已然忘了当时是怎么做的了,依稀记得是教育网给力。而且使用了Sundy老师介绍的一款工具来看,叫啥名也忘了。现在重新来过,通过这篇文章Mark一下如何拿到Android源代码,为后面的开发查看提供更可靠的信息源。
我们使用清华的镜像来下载Android的源代码。https://mirrors.tuna.tsinghua.edu.cn/help/AOSP/?utm_source=tuicool&utm_medium=referral

步骤如下:

下载 repo 工具:

mkdir ~/bin
PATH=~/bin:$PATH
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo

由于googleapis.com被和谐了,访问不了,于是第一步repo工具不成功。方案是

mkdir ~/bin
PATH=~/bin:$PATH
git clone git://aosp.tuna.tsinghua.edu.cn/android/git-repo.git
//得到的git-repo中的repo文件拷贝到bin目录
cp git-repo/repo ~/bin/
//在repo文件中修改
REPO_URL = ‘git://aosp.tuna.tsinghua.edu.cn/android/git-repo’

建立工作目录

mkdir WORKING_DIRECTORY
cd WORKING_DIRECTORY

初始化repo

repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest
//或 repo init -u git://aosp.tuna.tsinghua.edu.cn/aosp/platform/manifest
//如果提示无法连接到 gerrit.googlesource.com,可以编辑 ~/bin/repo,把 REPO_URL 一行替换成下面的:
REPO_URL = ‘https://gerrit-google.tuna.tsinghua.edu.cn/git-repo’

下载某个特定的 Android 版本

repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest -b android-6.0.1_r16

最新的分支是android-6.0.1_r16。所有的版本列表见:http://source.android.com/source/build-numbers.html#source-code-tags-and-builds

同步源码树(以后只需执行这条命令来同步):

repo sync

使用每月更新的初始化包

由于首次同步需要下载 37GB 数据,过程中任何网络故障都可能造成同步失败,因此你可以选择使用每月更新的初始化包。
首先到 http://mirrors.tuna.tsinghua.edu.cn/aosp-monthly/ 选择合适自己的构建包,aosp-latest.tar.xz 经过了 xz 压缩, 相对 aosp-latest.tar 小一些,但是解压的时间也要考虑进来,27G的压缩包呢!(如果CPU核多可以使用pxz解压)
使用方法如下:

wget http://mirrors.tuna.tsinghua.edu.cn/aosp-monthly/aosp-latest.tar # 下载初始化包
tar xf aosp-latest.tar
cd AOSP # 解压得到的 AOSP 工程目录
repo sync # 正常同步

使用Eclipse查看源码

在~/WORKING_DIRECTORY/development/ide目录下,可以看到Eclipse、emacs、intellij、xcode的文件夹,可能是源代码支持这几种工具查看。我们将Eclipse下的.classpath文件拷贝到~/WORKING_DIRECTORY根目录,然后在Eclipse中新建Java项目,选择location时选择~/WORKING_DIRECTORY目录即可导入Android的所有源码。由于数量比较大内容比较多,可能会等待几分钟的时间。最后情况如下:

Mac下通过镜像下载Android源代码相关推荐

  1. Windows11:如何下载Android源代码

    文章目录 AOSP简介 WSL安装 启动WSL 下载Ubuntu repo下载 拉取源代码 参考 AOSP简介 AOSP就是安卓开放的源代码,我们可以下载下来学习,或者进行二次开发.本文章主要介绍如何 ...

  2. Mac下使用docker下载nginx并挂载文件

    Mac下使用docker下载nginx并挂载文件. 也发到另外csdn:https://blog.csdn.net/zenkin/article/details/108612594 一.docker ...

  3. 下载Android源代码错误汇总分析

    配置下载Android源代码的过程及问题解决 最近在学习Android底层框架,今天打算研究一下Android源代码,源码的下载过程可没有想像的顺利.主要原因是网上的很多资料都是多年以前的,而一些网站 ...

  4. mac 下设置自动下载必应壁纸

    mac 下设置自动下载必应壁纸 mac 下自动更换壁纸 设置自动下载必应壁纸 问题 mac 下自动更换壁纸 设置自动下载必应壁纸 mac 下定时任务创建 mac 下定时任务可以利用launchctl, ...

  5. 教育网使用http proxy下载android源代码

    前两天按照书上的流程下载android源代码,下载repo之后,在执行下载时遇到如下错误: $ repo init -u git://android.git.kernel.org/platform/m ...

  6. 国内镜像下载android源码

    转载自:国内镜像加速android源码下载 1.下载修改好的repo,====下载地址====,密码:rb5t: 2.打开终端,输入: 12 mkdir ~/binPATH=~/bin:$PATH 3 ...

  7. 下载Android源代码

    1安装repo脚本 首先安装repo.在当前用户:~目录下新建一个bin目录.在终端中执行: #cd ~ #mkdir bin 然后,向PATH中添加bin路径: #export PATH=$PATH ...

  8. Android 源码获取-----在Windows环境下通过Git得到Android源代码

    在学习Android的过程中,深入其源代码研究对我们来说是非常重要的,这里将介绍如何通过在Windows环境下使用Git来得到我们的Android源代码. 1.首先确保你电脑上安装了Git,这个通过  ...

  9. Mac下用Charles实现Android http和https抓包

    背景 工作以后,团队需要,抓包工具用的特别多.Charles功能丰富,能满足需要抓包的大多数场景. 之所以专门讲一下Android抓包,一个原因是笔者从事Android开发,经常用:另外,就是网上关于 ...

最新文章

  1. BaseTDI.sys 瑞星卡巴冲突,导致机器蓝屏
  2. 2016网易实习生编程题:n个骰子的和等于m
  3. Set精讲(Java)·算法常用集合处理方法
  4. C++:43---派生类向基类转换、静态/动态的类变量
  5. presto集群安装
  6. Transformer组件很重要Attention is all you need
  7. java 异常 return_Java异常处理中同时有finally和return语句的执行问题
  8. python 网页版笔记_系统学习下python网络爬虫 笔记一
  9. 表格中建一个按钮_CAD | CAD和Excel的表格互换教程
  10. ubuntu命令和配置文件 修改IP
  11. merge 与include
  12. 书摘---创业36条军规6:管理的九个问题
  13. 【网易云信】即时通讯SDK DEMO
  14. XZ_icp金融经营许可证相关的文档和相关问题
  15. 【radon】图像的radon变换matlab仿真
  16. bzoj1022: [SHOI2008]小约翰的游戏John 博弈
  17. latch: cache buffers chains latch: ges resource hash list
  18. android mtk6592 禁止拖动主界面图标
  19. PDMA新产品组合管理【笔记】
  20. 基于移动互联网的短视频APP设计

热门文章

  1. Nginx如何支持HTTPS?手把手教贼简单!
  2. 支持青春筑梦,帮助青年发展——优秀企业家畅轻语林达荣
  3. 旁路流量检测--流量镜像
  4. Python图片压缩
  5. autodesk eagle导出gerber文件详细说明
  6. 太极链DAPP主要的三种热门游戏
  7. 【DR_CAN-MPC学习笔记】34.详细的MPC建模例子和matlab代码
  8. “智慧工地”应用与发展——访中国建筑股份有限公司总工程师毛志兵
  9. 【树莓派】了解wiringPi库、控制继电器
  10. 慕客ps插件删除方法