Android Q源代碼下載---Ubuntu&Windows

第一章         文章簡介... 2

第二章         windows下源碼下載... 2

1、安裝git客戶端... 2

2、安裝python環境... 3

3、創建Python腳本... 3

4、下載源碼... 4

第三章Ubuntu下源碼下載... 8

1、      安裝和配置git 8

2、安裝repo. 8

3、      下載源碼... 9

1、      Google方式下載... 9

2、國內鏡像下載... 9

 

 

 

 

本篇文章主要分享了一下,android Q源代碼的下載,要想分析源代碼那你必須要有源代碼,此處主要分享了在windows下直接下載源代碼和ubuntu上下載源代碼。因爲對於中國的開發者來說大多數工程師使用的是Windows環境,我們也更加的屬性,因此我主要以Windows爲例詳細講述了代碼下載過程。另外呢,使用Windows下載無需註冊任何的賬號就能夠下載到源代碼,從清華的鏡像直接就能獲取也無需翻牆。該文章主要針對一些想要獲取源代碼的同事,還有很多不足之處請,大家評論留言讓所有人都能夠看懂和掌握獲取源代碼。

另外、我特別聲明在公司並不是使用這種方式進行下載源代碼,公司更傾向於Ubuntu和git的linux下載,所以此方式不能使用與面試,只適用於個人查看下載源代碼。下面將詳細說明。

1、安裝git客戶端

首先需要到git官網下載git的客戶端:https://git-scm.com/download/win,如圖所示:

下載好後,一直下一步直到最後安裝完成即可,是個工程師應該都會操作,此處不做更多的講解。

2、安裝python環境

首先需要到python官網下載安裝包:https://www.python.org/getit/,如圖所示:

那爲什麼要安裝python呢,我們此處要使用python腳本來下載。

Python的安裝要注意必須將python加入到環境變量裏面。此處都是環境的安裝不做過多的講解。

3、創建Python腳本

創建一個python腳本,注意文件編碼使用utf-8,然後粘貼下面代碼到文件中,文件名用英文命名,例如download.py

 

import xml.dom.minidom

import os

from subprocess import call

 

# 1. 修改爲源碼要保存的路徑

rootdir = "H:/android_source_Q/sourcecode"

 

# 2. 設置 git 安裝的路徑

git = "D:/Git/bin/git.exe"

 

# 3. 修改爲第一步中 manifest 中 default.xml 保存的路徑

dom = xml.dom.minidom.parse("H:/android_source_Q/manifest/default.xml")

root = dom.documentElement

 

# prefix = git + " clone https://android.googlesource.com/"

# 4.使用清華源下載

prefix = git + " clone https://aosp.tuna.tsinghua.edu.cn/"

suffix = ".git"

 

if not os.path.exists(rootdir):

    os.mkdir(rootdir)

 

for node in root.getElementsByTagName("project"):

    os.chdir(rootdir)

    d = node.getAttribute("path")

    last = d.rfind("/")

    if last != -1:

        d = rootdir + "/" + d[:last]

        if not os.path.exists(d):

            os.makedirs(d)

        os.chdir(d)

    cmd = prefix + node.getAttribute("name") + suffix

call(cmd)

 

注意修改對應的磁盤位置,此處是我個人的下載路徑。我使用的是清華的鏡像

 

4、下載源碼

首先選擇一個磁盤,需要大概150個G左右,我下載的android Q 10.0大概是110個G,因爲裏面包含很多編譯腳本等等,如果僅僅是代碼也就沒有如此之多了。此處要注意如果磁盤不足就不能正常下載了

 

    • 先在盤上創建一個目錄android_Q,此處名字隨便起。
    • android_Q目錄中右鍵打開git bash的命令行,如果你安裝了git客戶端,你就會有下面的兩個選項。如圖:

③在此目錄下執行git clone https://android.googlesource.com/platform/manifest.git
(這是google的git地址),如果無法正常下載則執行git clone https://aosp.tuna.tsinghua.edu.cn/platform/manifest.git該地址。

git clone https://aosp.tuna.tsinghua.edu.cn/platform/manifest.git

是清華的鏡像地址,在國內的同事建議優先使用該地址,兩個地址其實差距不是很大。

 
執行完該命令後在你的目錄下會多一個manifest文件夾如下圖所示:


  • 修改第三步中的腳本,替換其中的路徑
⑤在git bash中進入manifes中,就可以使用git命令了

cd manifest 進入manifest

git branch -a 查看當前所有的分支

選擇一個自己要下載的分支:remotes/origin/android-q-preview-6 我此處選擇的是這個,這個是我下載完成後查看分支的截圖

  • 後執行python腳本python download.py,注意此處的python腳本的位置,要進入到python 腳本所在的目錄下執行,不然識別不到腳本。執行這個腳本之後就開始檢出,我這邊忘了截圖,就不貼截圖了,此處要注意下載的東西很多,所以要耗費很長時間,所以在下載的過程中,請設置你的電源選項爲永久不休眠,不然會打斷下載。

 


 

第三章Ubuntu下源碼下載

虛擬機的安裝和ubuntu的安裝請看文章:

https://blog.csdn.net/chen364567628/article/details/96693743

 

  1. 安裝和配置git

打開終端:(右鍵-打開終端)執行如下命令:

 

sudo apt-get install git

 

加入環境變量,此處注意爲什麼加-p,是因爲目錄不存在,需要創建。

 

sudo mkdir –p ~/binPATH=~/bin:$PATH

 

配置git的用戶名和郵箱,也就是註冊賬號時的信息:

git config --global user.name "Your Name"

 

git config --global user.email "[email protected]"

 

2、安裝repo

執行如下命令:

 

sudo apt-get install curl

 

創建bin目錄(可以不創建看自己的情況和下面的命令有關)

 

  1.  mkdir bin

 

安裝repo

  1. curl https://mirrors.tuna.tsinghua.edu.cn/git/git-repo > ~/bin/repo

 

添加可執行權限:

3、chmod a+x ~/bin/repo

 

安裝Python環境

sudo apt-get install python

 

  1. 下載源碼

如果你是可以訪問Google的服務器,即可以翻牆等用戶執行第一種方法操作。如果你不能訪問國外服務器,那麼請選用第一種方式。

  1. Google方式下載

執行如下命令:

 

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

 

切換具體的分支:對於分支信息請訪問

https://source.android.google.cn/source/build-numbers.html#source-code-tags-and-builds

 

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

 

執行命令

repo sync

但此處不建議這樣執行,二是加幾個參數:

 

repo sync –df –j8

 

至於該參數什麼含義,自行百度,可以簡單的說和併發是有關的

2、國內鏡像下載

如果是國內的通過清華的鏡像服務器下載需要按照如下方式進行:可以直接查看

https://mirrors.tuna.tsinghua.edu.cn/help/AOSP/

幫助文檔,也可以按照下面介紹進行。

進入bin下,修改repo文件中的

 

REPO_URL = 'https://gerrit.googlesource.com/git-repo'

改爲

REPO_URL = 'https://gerrit-google.tuna.tsinghua.edu.cn/git-repo'

 

此處注意直接用vi編輯會發現保存不了,需要使用W!強制保存,因爲repo文件是隻讀的。

 

repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest

 

repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest -b android-4.0.1_r1

切換具體的分支:對於分支信息請訪問

https://source.android.google.cn/source/build-numbers.html#source-code-tags-and-builds

 

同樣的不建議使用

repo sync

建議使用

 

repo sync -df -j4

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章