Android 5.1 AOSP 源码获取
本文已同步更新至:http://dxjia.cn/2015/08/android-aosp-code-sync/
Android 5.1源码开放有一个多月啦,但由于城墙的关系,每次想着更新最新源码学习都万般纠结,现在发现国内有开源镜像啦,这就好多啦,感谢清华开源工作团队的无私工作啊。
地址:http://mirrors.tuna.tsinghua.edu.cn/
根据页面上的介绍,该镜像只支持源码sync,不支持sdk更新。
- AOSP 镜像服务单 IP 并发数限制为 4。因版权原因,我们无法提供 Android SDK 镜像。
可以看一下他给出的使用帮助:http://mirrors.tuna.tsinghua.edu.cn/help/#AOSP
本文的步骤如果不成功,请移步上面的帮助链接,因为可能方法有变动。
因为我本地已经安装好了repo工具,所以直接根据使用帮助里面介绍的repo init,然后repo sync就可以了。
下面介绍一下具体的步骤:
安装repo工具
repo需要安装最新版本的,如果已经像我一样之前有安装的,可以略过此步。
官方给出的repo下载如下:
mkdir ~/bin
PATH=~/bin:$PATH
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo
repo init
新建存放源码的目录,我这里为 aosp目录,然后cd进入aosp目录,使用repo init目录来初始化仓库。
google官方给出的sync最新源码的命令为:
repo init -u https://android.googlesource.com/platform/manifest
如果不想获取到最新,只想得到某个指定版本,就需要多加一个-b参数,然后跟具体release版本名
repo init -u https://android.googlesource.com/platform/manifest -b android-4.0.1_r1
可惜国内同样不能用啦,我们要做的就是把-u参数修改为TUNA(清华镜像)的,如下:
repo init -u https://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'
repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest -b android-5.1.0_r3
这里再扩展介绍一下 -b参数的获取,android版本号实在是太多啦,不仅andriod 4.0 5.0的,还有小版本r1 r2,怎么才能搞到正确的分支名呢,而且指定的分支名还需要你的更新源上得有的,通过下面的方式:
cd ~
git clone git://aosp.tuna.tsinghua.edu.cn/aosp/platform/manifest
cd manifest
git branch -a
这样就会列出清华镜像上aosp所有的分支名啦,从中找到你想要的即可
* master
remotes/origin/HEAD -> origin/master
remotes/origin/adt_23.0.3
remotes/origin/android-.6_r1
remotes/origin/android-.6_r1.
remotes/origin/android-.6_r1.
remotes/origin/android-.6_r1.
remotes/origin/android-.6_r1.
remotes/origin/android-.6_r1.
remotes/origin/android-.6_r2
remotes/origin/android-2.0.1_r1
remotes/origin/android-.0_r1
remotes/origin/android-.1_r1
remotes/origin/android-.1_r2
remotes/origin/android-.1_r2.1p
remotes/origin/android-.1_r2.1p2
remotes/origin/android-.1_r2.1s
remotes/origin/android-2.2.1_r1
remotes/origin/android-2.2.1_r2
remotes/origin/android-2.2.2_r1
remotes/origin/android-2.2.3_r1
remotes/origin/android-2.2.3_r2
remotes/origin/android-2.2.3_r2.
remotes/origin/android-.2_r1
remotes/origin/android-.2_r1.
remotes/origin/android-.2_r1.
remotes/origin/android-.2_r1.
remotes/origin/android-2.3.1_r1
remotes/origin/android-2.3.2_r1
remotes/origin/android-2.3.3_r1
remotes/origin/android-2.3.3_r1.
remotes/origin/android-2.3.4_r0.
remotes/origin/android-2.3.4_r1
remotes/origin/android-2.3.5_r1
remotes/origin/android-2.3.6_r0.
remotes/origin/android-2.3.6_r1
remotes/origin/android-2.3.7_r1
remotes/origin/android-.3_r1
remotes/origin/android-4.0.1_r1
remotes/origin/android-4.0.1_r1.
remotes/origin/android-4.0.1_r1.
remotes/origin/android-4.0.2_r1
remotes/origin/android-4.0.3_r1
remotes/origin/android-4.0.3_r1.
remotes/origin/android-4.0.4_r1
remotes/origin/android-4.0.4_r1.
remotes/origin/android-4.0.4_r1.
remotes/origin/android-4.0.4_r2
remotes/origin/android-4.0.4_r2.
remotes/origin/android-4.1.1_r1
remotes/origin/android-4.1.1_r1.
remotes/origin/android-4.1.1_r2
remotes/origin/android-4.1.1_r3
remotes/origin/android-4.1.1_r4
remotes/origin/android-4.1.1_r5
remotes/origin/android-4.1.1_r6
remotes/origin/android-4.1.1_r6.
remotes/origin/android-4.1.2_r1
remotes/origin/android-4.1.2_r2
remotes/origin/android-4.1.2_r2.
remotes/origin/android-4.2.1_r1
remotes/origin/android-4.2.1_r1.
remotes/origin/android-4.2.1_r1.
remotes/origin/android-4.2.2_r1
remotes/origin/android-4.2.2_r1.
remotes/origin/android-4.2.2_r1.
remotes/origin/android-4.2.2_r1.2b
remotes/origin/android-.2_r1
remotes/origin/android-4.3.1_r1
remotes/origin/android-.3_r0.
remotes/origin/android-.3_r0.9.1
remotes/origin/android-.3_r1
remotes/origin/android-.3_r1.
remotes/origin/android-.3_r2
remotes/origin/android-.3_r2.
remotes/origin/android-.3_r2.
remotes/origin/android-.3_r2.-cts
remotes/origin/android-.3_r2.
remotes/origin/android-.3_r3
remotes/origin/android-.3_r3.
remotes/origin/android-4.4.1_r1
remotes/origin/android-4.4.1_r1.0.1
remotes/origin/android-4.4.2_r1
remotes/origin/android-4.4.2_r1.0.1
remotes/origin/android-4.4.2_r2
remotes/origin/android-4.4.2_r2.0.1
remotes/origin/android-4.4.3_r1
remotes/origin/android-4.4.3_r1.0.1
remotes/origin/android-4.4.3_r1.
remotes/origin/android-4.4.3_r1.1.0.
remotes/origin/android-4.4.4_r1
remotes/origin/android-4.4.4_r1.0.1
remotes/origin/android-4.4.4_r2
remotes/origin/android-4.4.4_r2.0.1
remotes/origin/android-.4_r1
remotes/origin/android-.4_r1.0.1
remotes/origin/android-.4_r1.
remotes/origin/android-.4_r1.1.0.
remotes/origin/android-.4_r1.
remotes/origin/android-.4_r1.2.0.
remotes/origin/android-.4w_r1
remotes/origin/android-5.0.0_r1
remotes/origin/android-5.0.0_r1.0.1
remotes/origin/android-5.0.0_r2
remotes/origin/android-5.0.0_r2.0.1
remotes/origin/android-5.0.0_r3
remotes/origin/android-5.0.0_r3.0.1
remotes/origin/android-5.0.0_r4
remotes/origin/android-5.0.0_r4.0.1
remotes/origin/android-5.0.0_r5
remotes/origin/android-5.0.0_r5.0.1
remotes/origin/android-5.0.0_r5.
remotes/origin/android-5.0.0_r5.1.0.
remotes/origin/android-5.0.0_r6
remotes/origin/android-5.0.0_r6.0.1
remotes/origin/android-5.0.0_r7
remotes/origin/android-5.0.0_r7.0.1
remotes/origin/android-5.0.1_r1
remotes/origin/android-5.0.2_r1
remotes/origin/android-5.0.2_r3
remotes/origin/android-5.1.0_r1
remotes/origin/android-5.1.0_r3
remotes/origin/android-5.1.0_r4
remotes/origin/android-5.1.0_r5
remotes/origin/android-5.1.1_r1
remotes/origin/android-5.1.1_r2
remotes/origin/android-5.1.1_r3
remotes/origin/android-cts-.2_r8
remotes/origin/android-cts-.3_r10
remotes/origin/android-cts-.3_r11
remotes/origin/android-cts-.3_r12
remotes/origin/android-cts-4.0.3_r1
remotes/origin/android-cts-4.0.3_r2
remotes/origin/android-cts-.0_r1
remotes/origin/android-cts-.1_r1
remotes/origin/android-cts-.1_r2
remotes/origin/android-cts-.1_r4
remotes/origin/android-cts-.2_r2
remotes/origin/android-cts-.0_r2
remotes/origin/android-cts-.1_r1
remotes/origin/android-cts-verifier-4.0.3_r1
remotes/origin/android-cts-verifier-.0_r1
remotes/origin/android-l-preview_r2
remotes/origin/android-sdk-4.0.-tools_r1
remotes/origin/android-sdk-4.0.3_r1
remotes/origin/android-sdk-4.4.2_r1
remotes/origin/android-sdk-4.4.2_r1.0.1
remotes/origin/android-sdk-adt_r16.0.1
remotes/origin/android-sdk-adt_r20
remotes/origin/android-sdk-support_r11
remotes/origin/android-support-test
remotes/origin/android-tsl-2.0
remotes/origin/android-wear-5.0.0_r1
remotes/origin/chromium-dev
remotes/origin/droiddriver-dev
remotes/origin/froyo
remotes/origin/gingerbread
remotes/origin/gingerbread-release
remotes/origin/gradle-dev
remotes/origin/gradle_0.12.2
remotes/origin/gradle_0.13.0
remotes/origin/gradle_0.13.1
remotes/origin/gradle_0.13.2
remotes/origin/gradle_0.13.3
remotes/origin/gradle_0.14.0
remotes/origin/gradle_0.14.1
remotes/origin/gradle_0.14.2
remotes/origin/gradle_0.14.3
remotes/origin/gradle_0.14.4
remotes/origin/gradle_1.0.0
remotes/origin/gradle_1.0.0-rc1
remotes/origin/gradle_1.0.0-rc2
remotes/origin/gradle_1.0.0-rc3
remotes/origin/gradle_1.0.0-rc4
remotes/origin/gradle_1.0.1
remotes/origin/gradle_1.1.0
remotes/origin/gradle_1.1.0-rc1
remotes/origin/gradle_1.1.0-rc2
remotes/origin/gradle_1.1.0-rc3
remotes/origin/gradle_1.1.1
remotes/origin/gradle_1.1.2
remotes/origin/gradle_1.1.3
remotes/origin/gradle_1.2.0
remotes/origin/gradle_1.2.0-beta1
remotes/origin/gradle_1.2.0-rc1
remotes/origin/gradle_1.2.1
remotes/origin/gradle_1.2.2
remotes/origin/gradle_1.2.3
remotes/origin/ics-mr0
remotes/origin/ics-mr1
remotes/origin/ics-plus-aosp
remotes/origin/idea133
remotes/origin/idea133-weekly-release
remotes/origin/jb-dev
remotes/origin/jb-mr1-dev
remotes/origin/jb-mr1-dev-plus-aosp
remotes/origin/jb-mr1.-dev
remotes/origin/jb-mr1.-dev-plus-aosp
remotes/origin/jb-mr2-cts-dev
remotes/origin/jb-mr2-dev
remotes/origin/jumper-stable
remotes/origin/kitkat-cts-dev
remotes/origin/kitkat-dev
remotes/origin/l-preview
remotes/origin/lollipop-cts-dev
remotes/origin/lollipop-dev
remotes/origin/lollipop-mr1-cts-dev
remotes/origin/lollipop-mr1-dev
remotes/origin/master
remotes/origin/master-art
remotes/origin/master-art-host
remotes/origin/master-dalvik
remotes/origin/master-dalvik-host
remotes/origin/master-soong
remotes/origin/ref/for/master
remotes/origin/studio-1.0-dev
remotes/origin/studio-1.0-release
remotes/origin/studio-1.1-dev
remotes/origin/studio-1.1-release
remotes/origin/studio-1.2-dev
remotes/origin/studio-1.2-release
remotes/origin/studio-1.3-dev
remotes/origin/studio-1.3-release
remotes/origin/studio-master-dev
remotes/origin/studio-master-release
remotes/origin/studio_0.8.6
remotes/origin/studio_1.0.0
remotes/origin/studio_1.0.1
remotes/origin/tools-canary-release
remotes/origin/tools_ndk_r9d
remotes/origin/tools_r20
remotes/origin/tools_r21
remotes/origin/tools_r21.
remotes/origin/tools_r22
remotes/origin/tools_r22.
remotes/origin/tools_r22.
remotes/origin/tradefed
remotes/origin/ub-emulator-master
remotes/origin/ub-jack
remotes/origin/ub-jack-arzon
remotes/origin/ub-jack-arzon-mr2
remotes/origin/ub-jack-brest
remotes/origin/ub-jack-lang-dev
remotes/origin/ub-tools-idea133
remotes/origin/ub-tools-idea133-milestone
remotes/origin/ub-tools-idea133-release
remotes/origin/ub-tools-master
remotes/origin/ub-webview-m40-release
remotes/origin/upstream-mirror-lldb
remotes/origin/webview-m40_r1
remotes/origin/webview-m40_r2
remotes/origin/webview-m40_r3
remotes/origin/webview-m40_r4
repo sync
repo sync
这样就开始更新代码啦,速度还不错。
替换已有的 AOSP 源代码的 remote
如果你之前已经通过某种途径获得了 AOSP 的源码(或者你只是 init 这一步完成后), 你希望以后通过 TUNA 同步 AOSP 部分的代码,只需要将 .repo/manifest.xml 把其中的 aosp 这个 remote 的 fetch 从 https://android.googlesource.com 改为 https://aosp.tuna.tsinghua.edu.cn/
<manifest>
<remote name="aosp"
- fetch="https://android.googlesource.com"
+ fetch="https://aosp.tuna.tsinghua.edu.cn"
review="android-review.googlesource.com" />
<remote name="github"
Android 5.1 AOSP 源码获取的更多相关文章
- Android Studio 导入 AOSP 源码
有了 AOSP 源码,接下来就是如何看了,可以直接文本看,可以用 Source Insight,我当然选择 Android Studio,Android Studio 是我熟悉且十分强大的工具.问题来 ...
- 【转】提供android 5.0 AOSP源码下载
http://blog.csdn.net/innost/article/details/41148335 android-5.0.tar.gz 115网盘礼包码:5lbcl16a1k7q http:/ ...
- 将AOSP源码导入到Android Studio进行查看
生成iml和ipr文件 source build/envsetup.sh lunch aosp_x86-eng # 或者直接输入lunch,然后选择对应的target make idegen deve ...
- Android 自定义View及其在布局文件中的使用示例(三):结合Android 4.4.2_r1源码分析onMeasure过程
转载请注明出处 http://www.cnblogs.com/crashmaker/p/3549365.html From crash_coder linguowu linguowu0622@gami ...
- Ubuntu 14.04 LTS 下 android 2.3.5 源码编译过程
Ubuntu 14.04 LTS 下 android 2.3.5 源码编译过程 在新的Ubuntu 64位系统下去编译早期的安卓源码是会出现很多问题的,因为64位系统在安装完成后,很多32位的兼容 ...
- Android -- 带你从源码角度领悟Dagger2入门到放弃(二)
1,接着我们上一篇继续介绍,在上一篇我们介绍了简单的@Inject和@Component的结合使用,现在我们继续以老师和学生的例子,我们知道学生上课的时候都会有书籍来辅助听课,先来看看我们之前的Stu ...
- [Android FrameWork 6.0源码学习] View的重绘过程之WindowManager的addView方法
博客首页:http://www.cnblogs.com/kezhuang/p/关于Activity的contentView的构建过程,我在我的博客中已经分析过了,不了解的可以去看一下<[Andr ...
- 编译Android 4.4.2源码
在之前的文章中,和大家分享了在天朝下下载android 4.4.2源码的过程(详见下载android4.4.2源码全过程(附已下载的源码)),现在写下编译的笔记. 虽然在android doc中,有提 ...
- AOSP 源码整编单编
<AOSP 源码下载>完成后,就可以开编了. 整编 整编,顾名思义就是编译整个 Android 源码,最终 out 目录会生成几个重要的镜像文件,其中有 system.img.userda ...
随机推荐
- Java将文本写入字符输出流,缓冲各个字符,从而提供单个字符、数组和字符串的高效写入。
java.io 类 BufferedWriter java.lang.Object java.io.Writer java.io.BufferedWriter BufferedWriter publi ...
- [转]oracle pump expdp impdp使用
用expdp或impdp命令时, 可暂不指出用户名/密码@实例名 as 身份, 然后根据提示再输入, 如: expdp schemas=scott DIRECTORY=dpdata dum ...
- python基础整理笔记(三)
一. python的几种入参形式:1.普通参数: 普通参数就是最一般的参数传递形式.函数定义处会定义需要的形参,然后函数调用处,需要与形参一一对应地传入实参. 示例: def f(a, b): pri ...
- 【07_226】Invert Binary Tree
Invert Binary Tree Total Accepted: 54994 Total Submissions: 130742 Difficulty: Easy Invert a binary ...
- 使用NHibernate(8)-- 延迟加载
1,延迟加载. 延迟加载,即用到的时候再加载数据.这种机制是非常有情怀的,比如一篇中的用户实体有标签.问题等导航属性,如果只是用到用户名去查询整个实体,则把相关的标签和问题也都加载,性能会比较低.而有 ...
- C#的泛型委托与闭包函数
前些天Wendy问我说Func<T, ResultT>是个什么意思,初学C#都觉得这样的写法很奇葩,甚至觉得这样写有点诡异,其实以我来看,这是体现C#函数式编程的又一个亮点. 从MSDN上 ...
- ".NET Core Open Source Update"阅读笔记
原文链接:.NET Core Open Source Update [Immo Landwerth发布于2015年1月28日] corefx在github上的forks已经超过1000. 从2014年 ...
- PDB调试Python程序
pdb是python内置的调试工具, 它可以在终端中调试Python程序, 这允许pdb在很多无法安装IDE的服务器上使用. 虽然远程调试使用广泛, 但在必要的时候(比如难以在本地搭建运行环境)pdb ...
- intellij代码跳转后跳回
跳转快捷键: ctrl+b 跳回的快捷键默认为 ctrl+alt+left 然而在我的电脑上并没有卵用,所以自己设置回退的快捷键,设置位置为: File/Setting/Keymap 选择 Main ...
- C语言实现单链表-03版
在C语言实现单链表-02版中我们只是简单的更新一下链表的组织方式: 它没有更多的更新功能,因此我们这个版本将要完成如下功能: Problem 1,搜索相关节点: 2,前插节点: 3,后追加节点: 4, ...