下载android4.4.2源码全过程(附已下载的源码)

来源:互联网 发布:社工库数据下载 编辑:程序博客网 时间:2024/05/17 09:46

今天在下载andriod源码,特来与大家分享一下我的经验。当然,网上教下载源码的教程较多,本文主要针对在GFW下下载源码出现的各种问题的解决方法。

1、首先安装下载客户端git , curl。

命令如下:

[plain] view plaincopy在CODE上查看代码片派生到我的代码片
  1. sudo apt-get install curl git  

2、创建一个bin目录,加入到PATH当中。

[plain] view plaincopy在CODE上查看代码片派生到我的代码片
  1. mkdir ~/bin  
  2. PATH=~/bin:$PATH  

3、下载repo的脚本并添加可执行权限。

[plain] view plaincopy在CODE上查看代码片派生到我的代码片
  1. curl http://git-repo.googlecode.com/files/repo-1.13 > ~/bin/repo  
  2. chmod a+x ~/bin/repo  

在这里,问题就出来了。自5月底开始,谷歌的相关网站,基本上都已经不能直接访问了,当然,我一直用goagent翻墙,所受影响不大,除了打不开tools.android.com这个站点之外。在这里,我假设你已经有代理工具的了(如果没有,会折腾的用goagent,不会折腾的一个月花几块钱买一个)。下面我们就需要设置curl的代理,方法很简单,加个参数 -x 代理地址。比如我的代理服务器为我在局域网里的另一部电脑,IP为192.168.137.1,端口为8087.那么上面下载 repo脚本的命令就应该为:
[plain] view plaincopy在CODE上查看代码片派生到我的代码片
  1. curl -x 192.168.137.1:8087 http://git-repo.googlecode.com/files/repo-1.13 > ~/bin/repo  

下载之后,再修改权限,如上面所示。


4、创建源码目录并进入。

[plain] view plaincopy在CODE上查看代码片派生到我的代码片
  1. mkdir android4.4.2  
  2. cd android4.4.2  

5、初始化repo。

[plain] view plaincopy在CODE上查看代码片派生到我的代码片
  1. repo init -u https://android.googlesource.com/platform/manifest -b android-cts-4.2_r2  
在-b后面跟着的是分支名。不出意外,这里问题又来了。googlesource.com站点被墙,所以这里不能直接下载,需要设置代码。这里设置代码很简单,设置一下https.proxy的变量就可以了。如下:
[plain] view plaincopy在CODE上查看代码片派生到我的代码片
  1. https_proxy=192.168.137.1:8087  

后面对应的值记得改回你自己的代理服务器地址及端口。

(补述,http的代理也要设置 ,后面下载代码会用到,方法同上,设置一下http_proxy变量。)

然后我们再执行初始化。这时,问题又来了,控制台输出:

[plain] view plaincopy在CODE上查看代码片派生到我的代码片
  1. Get https://code.google.com/p/git-repo/  
  2. error: server certificate verification failed. CAfile: /etc/ssl/certs/ca-certificates.crt CRLfile: none while accessing https://code.google.com/p/git-repo/info/refs  
  3. fatal: HTTP request failed  
显示是证书问题。导入证书我不知道怎么整,不过我找到了另一种方法,就是取消GIT的SSL验证。命令如下:
[plain] view plaincopy在CODE上查看代码片派生到我的代码片
  1. export GIT_SSL_NO_VERIFY=1  

然后我们再执行初始化,这时成功了(如果网络断开请多试一试)。

6、下载源码。

最后,执行repo sync即可。

7、关于获取源码清单

下面说一下如何获取各个版本的分支名。

首先,没有设置代理的要先设置GIT的代理,如下:

[plain] view plaincopy在CODE上查看代码片派生到我的代码片
  1. export https_proxy=192.168.137.1:8087  
  2. export https_proxy=192.168.137.1:8087  
  3. export GIT_SSL_NO_VERIFY=1  
其中第一、二行分别是设置http及https的代理服务器,后面的值修改为你自己的代替服务器的地址。

第三行是取消SSL验证,不然会出现SSL验证问题。

然后执行以下命令克隆该git 仓库。

[plain] view plaincopy在CODE上查看代码片派生到我的代码片
  1. git clone https://android.googlesource.com/platform/manifest  
接着执行git branch -a,即可得到各分支名,如下:
[plain] view plaincopy在CODE上查看代码片派生到我的代码片
  1. msdx@msdx-ubuntu:~/code/A/manifest$ git branch -a  
  2. * master  
  3.   remotes/origin/HEAD -> origin/master  
  4.   remotes/origin/android-1.6_r1  
  5.   remotes/origin/android-1.6_r1.1  
  6.   remotes/origin/android-1.6_r1.2  
  7.   remotes/origin/android-1.6_r1.3  
  8.   remotes/origin/android-1.6_r1.4  
  9.   remotes/origin/android-1.6_r1.5  
  10.   remotes/origin/android-1.6_r2  
  11.   remotes/origin/android-2.0.1_r1  
  12.   remotes/origin/android-2.0_r1  
  13.   remotes/origin/android-2.1_r1  
  14.   remotes/origin/android-2.1_r2  
  15.   remotes/origin/android-2.1_r2.1p  
  16.   remotes/origin/android-2.1_r2.1p2  
  17.   remotes/origin/android-2.1_r2.1s  
  18.   remotes/origin/android-2.2.1_r1  
  19.   remotes/origin/android-2.2.1_r2  
  20.   remotes/origin/android-2.2.2_r1  
  21.   remotes/origin/android-2.2.3_r1  
  22.   remotes/origin/android-2.2.3_r2  
  23.   remotes/origin/android-2.2.3_r2.1  
  24.   remotes/origin/android-2.2_r1  
  25.   remotes/origin/android-2.2_r1.1  
  26.   remotes/origin/android-2.2_r1.2  
  27.   remotes/origin/android-2.2_r1.3  
  28.   remotes/origin/android-2.3.1_r1  
  29.   remotes/origin/android-2.3.2_r1  
  30.   remotes/origin/android-2.3.3_r1  
  31.   remotes/origin/android-2.3.3_r1.1  
  32.   remotes/origin/android-2.3.4_r0.9  
  33.   remotes/origin/android-2.3.4_r1  
  34.   remotes/origin/android-2.3.5_r1  
  35.   remotes/origin/android-2.3.6_r0.9  
  36.   remotes/origin/android-2.3.6_r1  
  37.   remotes/origin/android-2.3.7_r1  
  38.   remotes/origin/android-2.3_r1  
  39.   remotes/origin/android-4.0.1_r1  
  40.   remotes/origin/android-4.0.1_r1.1  
  41.   remotes/origin/android-4.0.1_r1.2  
  42.   remotes/origin/android-4.0.2_r1  
  43.   remotes/origin/android-4.0.3_r1  
  44.   remotes/origin/android-4.0.3_r1.1  
  45.   remotes/origin/android-4.0.4_r1  
  46.   remotes/origin/android-4.0.4_r1.1  
  47.   remotes/origin/android-4.0.4_r1.2  
  48.   remotes/origin/android-4.0.4_r2  
  49.   remotes/origin/android-4.0.4_r2.1  
  50.   remotes/origin/android-4.1.1_r1  
  51.   remotes/origin/android-4.1.1_r1.1  
  52.   remotes/origin/android-4.1.1_r2  
  53.   remotes/origin/android-4.1.1_r3  
  54.   remotes/origin/android-4.1.1_r4  
  55.   remotes/origin/android-4.1.1_r5  
  56.   remotes/origin/android-4.1.1_r6  
  57.   remotes/origin/android-4.1.1_r6.1  
  58.   remotes/origin/android-4.1.2_r1  
  59.   remotes/origin/android-4.1.2_r2  
  60.   remotes/origin/android-4.1.2_r2.1  
  61.   remotes/origin/android-4.2.1_r1  
  62.   remotes/origin/android-4.2.1_r1.1  
  63.   remotes/origin/android-4.2.1_r1.2  
  64.   remotes/origin/android-4.2.2_r1  
  65.   remotes/origin/android-4.2.2_r1.1  
  66.   remotes/origin/android-4.2.2_r1.2  
  67.   remotes/origin/android-4.2.2_r1.2b  
  68.   remotes/origin/android-4.2_r1  
  69.   remotes/origin/android-4.3.1_r1  
  70.   remotes/origin/android-4.3_r0.9  
  71.   remotes/origin/android-4.3_r0.9.1  
  72.   remotes/origin/android-4.3_r1  
  73.   remotes/origin/android-4.3_r1.1  
  74.   remotes/origin/android-4.3_r2  
  75.   remotes/origin/android-4.3_r2.1  
  76.   remotes/origin/android-4.3_r2.2  
  77.   remotes/origin/android-4.3_r2.2-cts  
  78.   remotes/origin/android-4.3_r2.3  
  79.   remotes/origin/android-4.3_r3  
  80.   remotes/origin/android-4.3_r3.1  
  81.   remotes/origin/android-4.4.1_r1  
  82.   remotes/origin/android-4.4.2_r1  
  83.   remotes/origin/android-4.4.2_r2  
  84.   remotes/origin/android-4.4.3_r1  
  85.   remotes/origin/android-4.4.3_r1.1  
  86.   remotes/origin/android-4.4.4_r1  
  87.   remotes/origin/android-4.4_r1  
  88.   remotes/origin/android-4.4_r1.1  
  89.   remotes/origin/android-4.4_r1.2  
  90.   remotes/origin/android-cts-2.2_r8  
  91.   remotes/origin/android-cts-2.3_r10  
  92.   remotes/origin/android-cts-2.3_r11  
  93.   remotes/origin/android-cts-2.3_r12  
  94.   remotes/origin/android-cts-4.0.3_r1  
  95.   remotes/origin/android-cts-4.0.3_r2  
  96.   remotes/origin/android-cts-4.0_r1  
  97.   remotes/origin/android-cts-4.1_r1  
  98.   remotes/origin/android-cts-4.1_r2  
  99.   remotes/origin/android-cts-4.1_r4  
  100.   remotes/origin/android-cts-4.2_r2  
  101.   remotes/origin/android-cts-verifier-4.0.3_r1  
  102.   remotes/origin/android-cts-verifier-4.0_r1  
  103.   remotes/origin/android-sdk-4.0.3-tools_r1  
  104.   remotes/origin/android-sdk-4.0.3_r1  
  105.   remotes/origin/android-sdk-4.4.2_r1  
  106.   remotes/origin/android-sdk-adt_r16.0.1  
  107.   remotes/origin/android-sdk-adt_r20  
  108.   remotes/origin/android-sdk-support_r11  
  109.   remotes/origin/chromium-dev  
  110.   remotes/origin/froyo  
  111.   remotes/origin/gingerbread  
  112.   remotes/origin/gingerbread-release  
  113.   remotes/origin/ics-mr0  
  114.   remotes/origin/ics-mr1  
  115.   remotes/origin/ics-plus-aosp  
  116.   remotes/origin/idea133  
  117.   remotes/origin/idea133-weekly-release  
  118.   remotes/origin/jb-dev  
  119.   remotes/origin/jb-mr1-dev  
  120.   remotes/origin/jb-mr1-dev-plus-aosp  
  121.   remotes/origin/jb-mr1.1-dev  
  122.   remotes/origin/jb-mr1.1-dev-plus-aosp  
  123.   remotes/origin/jb-mr2-dev  
  124.   remotes/origin/jumper-stable  
  125.   remotes/origin/kitkat-cts-dev  
  126.   remotes/origin/kitkat-dev  
  127.   remotes/origin/l-preview  
  128.   remotes/origin/master  
  129.   remotes/origin/master-art  
  130.   remotes/origin/master-art-host  
  131.   remotes/origin/master-dalvik  
  132.   remotes/origin/master-dalvik-host  
  133.   remotes/origin/tools-canary-release  
  134.   remotes/origin/tools_ndk_r9d  
  135.   remotes/origin/tools_r20  
  136.   remotes/origin/tools_r21  
  137.   remotes/origin/tools_r21.1  
  138.   remotes/origin/tools_r22  
  139.   remotes/origin/tools_r22.2  
  140.   remotes/origin/tools_r22.6  
  141.   remotes/origin/tradefed  
  142.   remotes/origin/ub-tools-idea133  
  143.   remotes/origin/ub-tools-idea133-milestone  
  144.   remotes/origin/ub-tools-idea133-release  
  145.   remotes/origin/ub-tools-master  




最后,附上我已经下载好的源码:http://zdz.la/KN8Nai。

我下载的东西,其实有51G左右,其中.repo占了约42G,下载源码请留够硬盘

0 0
原创粉丝点击