android源码下载方法.docx
《android源码下载方法.docx》由会员分享,可在线阅读,更多相关《android源码下载方法.docx(15页珍藏版)》请在冰豆网上搜索。
android源码下载方法
下载android5.0源码
方法还是与之前我介绍的下载源码的方法一样,但是repo需要更新一下,否则可能会出现以下错误:
[plain]viewplaincopyprint?
1.type commit
2.tag v1.12.16
3.tagger Conley Owens 1398976458 -0700
4.
5.repo 1.12.16
6.
7.gpg:
于 2014年05月02日 星期五 04时34分18秒 CST 创建的签名,使用 RSA,钥匙号 692B382C
8.gpg:
无法检查签名:
找不到公钥
9.error:
不能校验 tag 'v1.12.16'
typecommit
tagv1.12.16
taggerConleyOwens1398976458-0700
repo1.12.16
gpg:
于2014年05月02日星期五04时34分18秒CST创建的签名,使用RSA,钥匙号692B382C
gpg:
无法检查签名:
找不到公钥
error:
不能校验tag'v1.12.16'
这是因为添加了一个新的公钥,所以需要使用新的repo,如下:
[plain]viewplaincopyprint?
1.curl > ~/bin/repo
curl>~/bin/repo
其他内容见我之前的文章:
下载android4.4.2源码全过程
1.首先安装下载客户端gitcurl
2.创建一个bin目录加入到PATH当中
3.下载repo的脚本并添加可执行权限
4.创建源码目录并进入
5.初始化repo
6.下载源码
7.关于获取源码清单
今天在下载andriod源码,特来与大家分享一下我的经验。
当然,网上教下载源码的教程较多,本文主要针对在GFW下下载源码出现的各种问题的解决方法。
1、首先安装下载客户端git,curl。
命令如下:
[plain]viewplaincopyprint?
1.sudo apt-get install curl git
sudoapt-getinstallcurlgit
2、创建一个bin目录,加入到PATH当中。
[plain]viewplaincopyprint?
1.mkdir ~/bin
2.PATH=~/bin:
$PATH
mkdir~/bin
PATH=~/bin:
$PATH
3、下载repo的脚本并添加可执行权限。
[plain]viewplaincopyprint?
1.curl http:
//git- > ~/bin/repo
2.chmod a+x ~/bin/repo
curlhttp:
//git->~/bin/repo
chmoda+x~/bin/repo
在这里,问题就出来了。
自5月底开始,谷歌的相关网站,基本上都已经不能直接访问了,当然,我一直用goagent翻墙,所受影响不大,除了打不开这个站点之外。
在这里,我假设你已经有代理工具的了(如果没有,会折腾的用goagent,不会折腾的一个月花几块钱买一个)。
下面我们就需要设置curl的代码,方法很简单,加个参数-x代理地址。
比如我的代理服务器为我在局域网里的另一部电脑,IP为192.168.137.1,端口为8087.那么上面下载repo脚本的命令就应该为:
[plain]viewplaincopyprint?
1.curl -x 192.168.137.1:
8087 http:
//git- > ~/bin/repo
curl-x192.168.137.1:
8087http:
//git->~/bin/repo
下载之后,再修改权限,如上面所示。
4、创建源码目录并进入。
[plain]viewplaincopyprint?
1.mkdir android4.4.2
2.cd android4.4.2
mkdirandroid4.4.2
cdandroid4.4.2
5、初始化repo。
[plain]viewplaincopyprint?
1.repo init -u -b android-cts-4.2_r2
repoinit-u-bandroid-cts-4.2_r2
在-b后面跟着的是分支名。
不出意外,这里问题又来了。
站点被墙,所以这里不能直接下载,需要设置代码。
这里设置代码很简单,设置一下https.proxy的变量就可以了。
如下:
[plain]viewplaincopyprint?
1.https_proxy=192.168.137.1:
8087
https_proxy=192.168.137.1:
8087
后面对应的值记得改回你自己的代理服务器地址及端口。
(补述,http的代理也要设置,后面下载代码会用到,方法同上,设置一下http_proxy变量。
)
然后我们再执行初始化。
这时,问题又来了,控制台输出:
[plain]viewplaincopyprint?
1.Get
2.error:
server certificate verification failed. CAfile:
/etc/ssl/certs/ca-certificates.crt CRLfile:
none while accessing
3.fatal:
HTTP request failed
Get
error:
servercertificateverificationfailed.CAfile:
/etc/ssl/certs/ca-certificates.crtCRLfile:
nonewhileaccessing
fatal:
HTTPrequestfailed
显示是证书问题。
导入证书我不知道怎么整,不过我找到了另一种方法,就是取消GIT的SSL验证。
命令如下:
[plain]viewplaincopyprint?
1.export GIT_SSL_NO_VERIFY=1
exportGIT_SSL_NO_VERIFY=1
然后我们再执行初始化,这时成功了(如果网络断开请多试一试)。
6、下载源码。
最后,执行reposync即可。
7、关于获取源码清单
下面说一下如何获取各个版本的分支名。
首先,没有设置代理的要先设置GIT的代理,如下:
[plain]viewplaincopyprint?
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
exporthttps_proxy=192.168.137.1:
8087
exporthttps_proxy=192.168.137.1:
8087
exportGIT_SSL_NO_VERIFY=1
其中第一、二行分别是设置http及https的代理服务器,后面的值修改为你自己的代替服务器的地址。
第三行是取消SSL验证,不然会出现SSL验证问题。
然后执行以下命令克隆该git仓库。
[plain]viewplaincopyprint?
1.git clone
gitclone
接着执行gitbranch-a,即可得到各分支名,如下:
[plain]viewplaincopyprint?
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/or