Android源码下载

为了能够顺利的下载Android的源码,同时也为了避免在网络上再次搜寻如何下载源码的麻烦,我把下载过程记录在这篇文档中。

官网中也有详细的介绍:

http://source.android.com/source/downloading.html

1.环境设置问题

系统:Ubuntu
12.04 LTS 64bit

所需工具:curl,
git-core, repo(repo的问题在后面有讲到)...

2.硬盘空间问题

首先,在下载源码之前,最首要的事请就是保证有足够的硬盘空间来存放代码。一般来说,从网络上下好的源码起码有20G以上。因此,我给自己的硬盘留了一块40G的分区来保存源码。

3.依赖问题

其实下载源码只用得到curl,git-core和repo。以下的命令是用来编译Android的。大家可以参考一下。

$
sudo apt-get install git gnupg flex bison gperf build-essential \

zip
curl libc6-dev libncurses5-dev:i386 x11proto-core-dev \

libx11-dev:i386
libreadline6-dev:i386 libgl1-mesa-glx:i386 \

libgl1-mesa-dev
g++-multilib mingw32 tofrodos \

python-markdown
libxml2-utils xsltproc zlib1g-dev:i386

$
sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1
/usr/lib/i386-linux-gnu/libGL.so

如果只想下载源码,执行以下命令就行了:

$sudo
apt-get install git git-core curl

但是,我们仍缺少repo这个用python写的脚本。官网上的方法好像不太适用:

$mkdir
~/bin

$
curl http://commondatastorage.googleapis.com/git-repo-downloads/repo
> ~/bin/repo

$chmod
a+x ~/bin/repo

推荐适用下述方法来获取repo:

$mkdir
~/bin

$curl
"http://php.webtutor.pl/en/wp-content/uploads/2011/09/repo"
>
~/bin/repo

$chmod
a+x ~/bin/repo

最后设置一下PATH:

$PATH=~/bin/:$PATH

3.选择分支

下载Android的源码之前,你要打算一下该下载哪个版本才行。这里我选择了最新的4.4.2,也就是代号为KOT49H的android-4.4.2_r1。

具体详情可以去官网查看一下,网址如下:(在Source
Code Tags and Builds
这一块)

http://source.android.com/source/build-numbers.html

4.一些相关设置

为了避免下载源码时会出现一些奇怪的错误,我们还应该修改一下/etc/hosts。

$sudo gedit
/etc/hosts

在/etc/hosts中,添加一下内容:

###
Google servers

74.125.31.82
www.googlesource.com

74.125.31.82
android.googlesource.com

203.208.46.172
cache.pack.google.com

59.24.3.173
cache.pack.google.com

5.初始化repo

下载源码时,我们就要用repo了。

先选择一个存放源码的目录,比如/home/user/android。那么使用一下的命令:

$mkdir
~/android

$cd ~/android

然后运行repo:

$
repo
init -u https://android.googlesource.com/platform/manifest

到后面,repo会要求你输入你的用户名并确认即可。此后,repo会保存一些相关信息到.repo文件夹中,源码下完之前千万不要把它删掉了。

之后在运行一下repo:

$repo
init -u https://android.googlesource.com/platform/manifest
-b android-4.4.2_r1

其中参数
-b
后面接你要下载的Android版本即可,如-b
android-4.4.2_r1

6.一个小改动

当所有设置都完成之后,我们还应当修改一个文件。这个文件就是.repo/manifest.xml。

$gedit
.repo/manifest.xml

打开文件之后,找到fetch=".."(在文件中的第5行)这一项,将其修改为fetch="https://android.googlesource.com"

7.开始下载源码

一切都设置好了之后,且保证没有问题后,我们就可以开始下载源码了。命令如下:

$repo
sync

8.下载中断问题

下载的过程中可能会出现中断现象,只要再次执行:

$repo
sync

9.总结

下载工具安装:

$sudo
apt-get install git git-core curl

repo的获取:

$mkdir
~/bin

$curl
"http://php.webtutor.pl/en/wp-content/uploads/2011/09/repo"
>
~/bin/repo

$chmod
a+x ~/bin/repo

设置PATH:

$PATH=~/bin/:$PATH

初始化repo:

$repo
init -u https://android.googlesource.com/platform/manifest

$repo
init -u https://android.googlesource.com/platform/manifest
-b android-4.4.2_r1

将.repo/manifest.xml中的fetch=”..”改为fetch="https://android.googlesource.com"

下载及下载中断都使用:

$repo
sync

[Android 源码] Android源码下载的更多相关文章

  1. android源码-安卓源码-Android源码下载-安卓游戏源码

    android源码   高仿精仿金山手机卫士应用源码V1.2 高仿精仿金山手机卫士应用源码,该应用的级别实现了金山卫士的级别功能了,可以说跟现实中我们使用的金山卫士应用的功能几乎差不 人气:9286  ...

  2. Android 2.3.5源码 更新至android 4.4,能够下载,度娘网盘

    Android 4.4源代码下载(linux合并) ==============================切割线结束========================= 旧版本号的能够使用115, ...

  3. 查看android源码,windows环境下载源码

    查看源码 参考: http://blog.csdn.net/janronehoo/article/details/8560304 步骤: 添加chrome插件 Android SDK Search 进 ...

  4. Android源码4.4.4_r1下载和编译

    系统:ubuntu 16.04.2 TLS 1.源码下载: sudo apt-get install curl curl https://storage.googleapis.com/git-repo ...

  5. Android音乐播放器源码(歌词.均衡器.收藏.qq5.0菜单.通知)

    一款Android音乐播放器源码,基本功能都实现了 qq5.0菜单(歌词.均衡器.收藏.qq5.0菜单.通知) 只有向右滑动出现,菜单键和指定按钮都还没有添加. 源码下载:http://code.66 ...

  6. Ubuntu 14.04 LTS 下 android 2.3.5 源码编译过程

    Ubuntu 14.04 LTS 下 android 2.3.5 源码编译过程   在新的Ubuntu 64位系统下去编译早期的安卓源码是会出现很多问题的,因为64位系统在安装完成后,很多32位的兼容 ...

  7. 一款非常简单的android音乐播放器源码分享给大家

    一款非常简单的android音乐播放器源码分享给大家,该应用虽然很小,大家常用的播放器功能基本实现了,可能有点还不够完善,大家也可以自己完善一下,源码在源码天堂那里已经有了,大家可以到那里下载学习吧. ...

  8. 实例源码--Android日历实例源码

      下载源码   技术要点: 1.Android基础控件的使用 2.Android应用开发基础框架 3.源码带有非常详细的中文 注释 ...... 详细介绍: 1. Android应用开 发技术 此套 ...

  9. wemall app商城源码Android之ListView异步加载网络图片(优化缓存机制)

    wemall-mobile是基于WeMall的android app商城,只需要在原商城目录下上传接口文件即可完成服务端的配置,客户端可定制修改.本文分享wemall app商城源码Android之L ...

  10. Ubuntu TensorFlow 源码 Android Demo的编译运行

    Ubuntu TensorFlow 源码 Android Demo的编译运行 一. 安装 Android 的SDK和NDK SDK 配置 A:下载 国内下载地址选最新的: SDK: https://d ...

随机推荐

  1. GUC-3 模拟CAS算法

    /* * 模拟 CAS 算法 */ public class TestCompareAndSwap { public static void main(String[] args) { final C ...

  2. 二叉排序树实现(C++封装)

    设计思路 设计一个类,根结点只可读取,具备构造二叉树.插入结点.删除结点.查找. 查找最大值.查找最小值.查找指定结点的前驱和后继等功能接口. 二叉排序树概念 它或者是一棵空树:或者是具有下列性质的二 ...

  3. Java 如何调用 oracle 的存储过程

    通过命令行创建存储过程 create or replace procedure emp_sal(eno emp.empno%type,esal out emp.sal%type) as begin s ...

  4. 关于<c:if>没有<c:else>解决方案-转载

    <c:if>没有<c:else>可以用<c:choose>来取代结构: <c:choose> <c:when test=""& ...

  5. ref:Java安全之反序列化漏洞分析(简单-朴实)

    ref:https://mp.weixin.qq.com/s?__biz=MzIzMzgxOTQ5NA==&mid=2247484200&idx=1&sn=8f3201f44e ...

  6. jquery选择器详细说明

    jquery中选择器感觉是用的特别多并且特别方便的一个方法,今天就在这里详细的记载下大多数常用的选择器,一起学习探讨. 首先介绍的是css3的选择器,其中包括了标签选择器(div),ID选择器(#ID ...

  7. css控制默认滚动条样式

    针对webkit内核的浏览器,使用伪类来改变滚动条的默认样式,详情如下: 滚动条组成部分 1. ::-webkit-scrollbar 滚动条整体部分 2. ::-webkit-scrollbar-t ...

  8. javascript中Date对象的应用

    前面的话 简易日历作为javascript中Date对象的常见应用,用途较广泛.本文将详细说明简易日历的实现思路 效果演示 HTML说明 使用type=number的两个input分别作为年和月的输入 ...

  9. 【SPFA+二分答案】BZOJ1614- [Usaco2007 Jan]Telephone Lines架设电话线

    沉迷于刷水 以前的那个二分写法过不了QAQ 换了一种好像大家都比较常用的二分.原因还不是很清楚. [题目大意] 给出一张图,可以将其中k条边的边权减为0,求1到n的路径中最长边的最小值. [思路] 二 ...

  10. hibernate之条件查询

    一.条件查询简介 条件查询是更据面向对象特色的数据查询方式,主要通过如下3个类完成 1.Criteria:代表一次查询 2.Criterion:代表一个查询条件 3.Restrictions:产生查询 ...