[Android 源码] Android源码下载
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源码下载的更多相关文章
- android源码-安卓源码-Android源码下载-安卓游戏源码
android源码 高仿精仿金山手机卫士应用源码V1.2 高仿精仿金山手机卫士应用源码,该应用的级别实现了金山卫士的级别功能了,可以说跟现实中我们使用的金山卫士应用的功能几乎差不 人气:9286 ...
- Android 2.3.5源码 更新至android 4.4,能够下载,度娘网盘
Android 4.4源代码下载(linux合并) ==============================切割线结束========================= 旧版本号的能够使用115, ...
- 查看android源码,windows环境下载源码
查看源码 参考: http://blog.csdn.net/janronehoo/article/details/8560304 步骤: 添加chrome插件 Android SDK Search 进 ...
- Android源码4.4.4_r1下载和编译
系统:ubuntu 16.04.2 TLS 1.源码下载: sudo apt-get install curl curl https://storage.googleapis.com/git-repo ...
- Android音乐播放器源码(歌词.均衡器.收藏.qq5.0菜单.通知)
一款Android音乐播放器源码,基本功能都实现了 qq5.0菜单(歌词.均衡器.收藏.qq5.0菜单.通知) 只有向右滑动出现,菜单键和指定按钮都还没有添加. 源码下载:http://code.66 ...
- Ubuntu 14.04 LTS 下 android 2.3.5 源码编译过程
Ubuntu 14.04 LTS 下 android 2.3.5 源码编译过程 在新的Ubuntu 64位系统下去编译早期的安卓源码是会出现很多问题的,因为64位系统在安装完成后,很多32位的兼容 ...
- 一款非常简单的android音乐播放器源码分享给大家
一款非常简单的android音乐播放器源码分享给大家,该应用虽然很小,大家常用的播放器功能基本实现了,可能有点还不够完善,大家也可以自己完善一下,源码在源码天堂那里已经有了,大家可以到那里下载学习吧. ...
- 实例源码--Android日历实例源码
下载源码 技术要点: 1.Android基础控件的使用 2.Android应用开发基础框架 3.源码带有非常详细的中文 注释 ...... 详细介绍: 1. Android应用开 发技术 此套 ...
- wemall app商城源码Android之ListView异步加载网络图片(优化缓存机制)
wemall-mobile是基于WeMall的android app商城,只需要在原商城目录下上传接口文件即可完成服务端的配置,客户端可定制修改.本文分享wemall app商城源码Android之L ...
- Ubuntu TensorFlow 源码 Android Demo的编译运行
Ubuntu TensorFlow 源码 Android Demo的编译运行 一. 安装 Android 的SDK和NDK SDK 配置 A:下载 国内下载地址选最新的: SDK: https://d ...
随机推荐
- WPF 获取计算机字体
//加载计算机上可用的字体 public void LoadFonts(object ietfLanguageTag) { try { var sysFonts = Fonts.SystemFontF ...
- Docker CentOS 网段与公司网段冲突
参考文章: <Docker修改默认地址172.17.0.1> 在公司内网的一个虚拟服务器(CentOS 7)安装Docker后,发现网段172.18.0.1和172.17.0.1与公司内部 ...
- 洛谷P2464 [SDOI2008] 郁闷的小j [分块]
题目传送门 郁闷的小j 题目描述 小J是国家图书馆的一位图书管理员,他的工作是管理一个巨大的书架.虽然他很能吃苦耐劳,但是由于这个书架十分巨大,所以他的工作效率总是很低,以致他面临着被解雇的危险,这也 ...
- 洛谷P3459 [POI2007]MEG-Megalopolis [树链剖分]
题目传送门 MEG 题目描述 Byteotia has been eventually touched by globalisation, and so has Byteasar the Postma ...
- Python并发编程-进程池回调函数
回调函数不能传参数 回调函数是在主进程中执行的 from multiprocessing import Pool import os def func1(n): print('in func1', o ...
- java抽象类、多态、接口
抽象类 抽象类的产生 当编写一个类时,我们往往会为该类定义一些方法,这些方法是用来描述该类的功能具体实现方式,那么这些方法都有具体的方法体. 但是有的时候,某个父类只是知道子类应该包含怎么样的方法,但 ...
- Calendar日期方法
面试居然让我获取当前月份第一天跟最后一天,主要是尴尬的回答不上来. 废话不说,直接贴代码,工作应该是够用了 public class TestCalendar { // 日期也就是这了 public ...
- oracle charset
select userenv('language') from dual; USERENV('LANGUAGE') ------------------------------------------ ...
- 初识Linux 基础操作(2)
1.Linux启动流程 1).linux启动过程 ①.进入grub界面选择相应的启动内核 ②.读取kernel内核文件-/boot/vmlinuz-* ...
- [APIO2015]巴厘岛的雕塑 --- 贪心 + 枚举
[APIO2015]巴厘岛的雕塑 题目描述 印尼巴厘岛的公路上有许多的雕塑,我们来关注它的一条主干道. 在这条主干道上一共有\(N\)座雕塑,为方便起见,我们把这些雕塑从 1 到\(N\)连续地进行 ...