Mac下通过镜像下载Android源代码
2016-03-04 00:19
369 查看
在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
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’
cd WORKING_DIRECTORY
//或 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-6.0.1_r16。所有的版本列表见:http://source.android.com/source/build-numbers.html#source-code-tags-and-builds
首先到 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 # 正常同步
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 ~/binPATH=~/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_DIRECTORYcd 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的所有源码。由于数量比较大内容比较多,可能会等待几分钟的时间。最后情况如下:相关文章推荐
- Android 切换系统语言源码分析
- android 为textView设置selector
- Gradle Dsl method not found:'android()'
- android Studio Crunching Cruncher
- Android快速开发系列 10个常用工具类
- android用欢迎界面加载运行环境
- AndroidStudio(2.0 Beta 6) 如何将新建的工程放到Git@osc上
- 推荐android studio一个插件 使用butterknife注解框架时可以快速生成注解
- android listview每个item定义动画呈现
- Android连连看源码---百度文库
- Android里EditText按删除键没反应的解决方法
- Android View(二)-View的scrollTo()以及scrollBy()说明
- Android View(一)-View坐标以及方法说明
- android线程小结
- 使用MAT查看Android内存泄露
- 2016-3-3
- 深入理解Android内核设计思想——读书笔记
- Android中的ImageView的设置
- Android ListView中处理嵌套滑动问题,类似ScrollView嵌套ListView
- 《Android开发艺术探索》读书笔记 (3) 第3章 View的事件体系