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. 刽子手游戏(UVa489)

    题目具体描述见:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_prob ...

  2. 小甲鱼Python笔记(类)

    类和对象 类的构造方法 def __init__(): 1 class People: 2 def __init__(self,name): 3 self.name = name 注意:在构造方法中的 ...

  3. 【LOJ】#2014. 「SCOI2016」萌萌哒

    题解 这个题好妙啊 首先我们发现,如果我们可以暴力,就是把相同的元素拿并查集合起来,最后统计集合个数\(cnt\) 答案是\(9\*10^{cnt - 1}\) 然而我们做不到= = 我们可以用倍增的 ...

  4. QT编译发布程序后报错如缺少dll、“应用程序无法正常启动(0xc000007b)”的可能解决方法

    QT编译发布程序后报错如缺少dll.“应用程序无法正常启动(0xc000007b)”的可能解决方法 最近项目要用qt,因为初学没有经验,遇到些小问题常常没什么头绪,也查不到解决方法,刚刚还因为低端错误 ...

  5. 湖南大学ACM程序设计新生杯大赛(同步赛)A - Array

    题目描述 Given an array A with length n  a[1],a[2],...,a[n] where a[i] (1<=i<=n) is positive integ ...

  6. 【LeetCode】shell

    195. Tenth Line 输出file.txt中的第十行 答案: # Read from the file file.txt and output the tenth line to stdou ...

  7. NumPy简明教程(二、数组1)

    NumPy数组 NumPy数组是一个多维数组对象,称为ndarray.其由两部分组成: 实际的数据 描述这些数据的元数据 大部分操作仅针对于元数据,而不改变底层实际的数据. 关于NumPy数组有几点必 ...

  8. 我的OI生涯 第三章

    第三章 日子过得就像那些不眠的晚上,她嚼着口香糖对墙满谈着理想.——————赵雷<成都> NOIP过后我认识到了自己有多么菜,我换了座,到了靠窗户那排. 大王开始给我们介绍一些高端算法,那 ...

  9. 【欧拉函数】BZOJ4173-数学

    [题目大意] [思路] 基本是popoqqq大爷的题解,稍微添加了几句自己的注释,方便理解 同理,如果n%k+m%k<k等价于0 =∑([(n+m)/k]-[n/k]-[m/k])×φ(k) … ...

  10. maven搭建企业级多模块项目

    1.创建一个maven项目 选择pom 完成 2.创建模块 项目右键选择module,创建模块.创建子模块 其余的打包时都为jar 地址:https://github.com/LeviFromCN/m ...