1. 程式人生 > >Android原始碼(window下如何獲取)

Android原始碼(window下如何獲取)

概要

Android原始碼由Git進行管理,由於原始碼由眾多的模組組成,每個模組又可能依賴許多第三方庫,所以如果想要通過git連結一個個clone下來的話工作量將會非常大,所以Google用Python編寫了一個repo工具用來批量下載Android原始碼(但是這個工具需要linux環境,如果想在windows下使用我們就必須在windows環境下搭建一個模擬的linux環境,這個模擬的linux環境我們可以用Cygwin來搭建)。
首先Google用一個Git倉庫用來記錄當前Android版本下各個子專案的Git倉庫分別處於哪一個分支,這個倉庫通常叫做:manifest倉庫。這個倉庫裡面有一個XML檔案,其實就是一個檔案清單,列出了本程式碼倉庫依賴哪些程式碼,該去哪下載,分支是什麼。repo工具首先會clone這個倉庫,然後根據這個XML檔案(default.xml)列出的路徑去批量下載原始碼。在windows下一般可以用以下兩種方法來下載Android原始碼。

通過Python批量下載

需要工具如下:

  1. 輸入命令,切換到manifest目錄
    cd manifest
  2. Git tag 列出android各個分支版本
    下載android-7.0系統原始碼,輸入下面命令,如果要下載其他版本原始碼,checkout git tag列出的版本號即可
  3. git checkout android-7.0.0_r6
    checkout之後,manifest/default.xml檔案中記錄的就是android7.0系統各個模組的路徑,
    下面就輪到python出場了,這裡用的是網上的一段python程式碼,實現原始碼的批量下載
    執行此指令碼的前提是已經執行了git checkout,選擇好了要下載的Android原始碼版本,如果你的manifest檔案不是C:\Android\Android Src\manifest\default.xml,
    這裡寫圖片描述

還要把裡面的git.exe的路經修改成你的安裝路徑,請自行修改指令碼。
download-src.py原始碼:

import xml.dom.minidom  
import os  
from subprocess import call  

#downloaded source path  
rootdir = "E:/Android/AndroidSource"  

#git program path  
git = "D:/Program Files/git/Git/bin/git.exe"
dom = xml.dom.minidom.parse("E:/Android/AndroidSource/default.xml"
) root = dom.documentElement 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)

執行這個指令碼之後將會自動下載原始碼

這裡寫圖片描述

國內映象速度還是很快的。一會就下載了這麼多檔案。
這裡寫圖片描述

相關推薦

Android原始碼window如何獲取

概要 Android原始碼由Git進行管理,由於原始碼由眾多的模組組成,每個模組又可能依賴許多第三方庫,所以如果想要通過git連結一個個clone下來的話工作量將會非常大,所以Google用Python編寫了一個repo工具用來批量下載Android原始碼(但

使用com.aspose.words將word模板轉為PDF亂碼解決方案window正常

     最近在做產品大成小管(大成小管),使用com.aspose.words將word模板轉為PDF檔案時,在開發平臺window下轉換沒有問題,中文也不會出現亂碼。但是將服務部署在正式伺服器(linux)上,轉換出來的PDF中文就出現了亂碼。在網上找了很久,才找到原因

下載Android原始碼5.1.1

Win10環境: 1/ 安裝Vmware Workstation 2/ 建立虛擬機器,下載安裝Ubuntu16.04 3/ 安裝OpenJDK ( http://www.linuxidc.com/Linux/2017-11/148695.htm ) $ sudo a

Android原始碼解析Window系列第篇---Window的基本認識和Activity的Window建立過程

您可能聽說過View ,ViewManager,Window,PhoneWindow,WindowManager,WindowManagerService,可是你知道這幾個類是什麼關係,幹嘛用的。概括的來說,View是放在Window中的,Window是一個抽象

Android SDK Manager和AVD Manager使用win7_64bit測試

參數 osi 軟件開發 ostc 安裝包 下載 項目構建工具 sys android開發 http://www.cnblogs.com/kangjianwei101/p/5621238.html#m4 Android SDK Manager和AVD Man

cmder安裝window好用的終端

href 執行 targe 壓縮 tar In 配置環境變量 輸入 gis cmder下載地址:cmder官網 安裝步驟: 下載cmder(cmder官網)並解壓縮 配置環境變量 先配置CMDER_HOME(cmder.exe所在目錄) 配置path:%

redis解除安裝安裝和啟動命令window

1、安裝redis服務 redis-install.bat 1 echo install redis-server 2 3 D:\redis\redis-server.exe --service-install D:\redis\redis.windows.conf --

linux 的兩種軟體安裝方式 —— 原始碼編譯、安裝,編譯好的二進位制直接安裝

我們以 GPG(加密工具)為例來說明兩種安裝方式的區別: 原始碼(Source code releases,名稱中則會含有src等說明資訊,tarball:source),先編譯再安裝 ./c

數千個Android專案原始碼安卓遊戲原始碼大全經典安卓專案附帶原始碼文件版

今天給大家分享下本人嘔心瀝血整理的上千個安卓原始碼,包括遊戲,安全 ,工具,商城等,內容非常全。這篇博文有兩個版本,上一個版本是圖片的,這一個是文字版的,方便大家Ctrl+F尋找自己想要的原始碼。 適合人群 想要做android開發的上班族:眾多經典案例,讓你瞭解快速

手動編譯cpp檔案window

在windows的編譯工具是cl 安裝完vc6.0後目錄為  C:\Program Files (x86)\Microsoft Visual Studio\VC98\Bin 下。 【cl程式是綠色的,但不清楚其他依賴項】 開始的時候用editPlus 編輯cpp檔案,然

下載Android 原始碼高牆之下,只能用映象啦

按照http://source.android.com上的步驟並不能獲取android原始碼,估計又是被牆了。不過經過研究發現可以從一些映象站點上獲取android原始碼     $ mkdir ~/bin    $ PATH=~/bin:$PATH $ c

React-Native初體驗五window引用第三方庫:Toast

react-native-root-toast專案簡介 Features: Pure javascript solution. Support both Android and iOS. Lots of custom options for T

如何檢視FrameWork層原始碼例如:PhoneWindow android.jar

找到你的sdk路徑 開啟sdk路徑位置 把這個android.jar拷貝到你的專案中, 建立一個lib目錄,放到lib下面,點選右鍵,as a library,就可以雙擊

window檢視1099埠被哪個程序佔用的命令window命令也類似linux啊,netstat -aon|findstr "1099

最近測試過程中遇到一個問題,每次啟動被測RMI伺服器時,提示1099號埠被佔用(RMI伺服器埠號預設為1099),很是 鬱悶,上網查資料後終於幹掉了,呵呵,為了再次遇到該情況時能自己解決,特將方法總結如下: 1.在windows命令列視窗下執行: C:\>netstat -aon|findstr "1

AS完美匯入Android原始碼原始碼下載

android原始碼版本: android-8.1.0_r1,大約佔34g,刪除了.repo等檔案,可以完美匯入Android Studio,不報錯誤,提供給硬碟不夠充足的朋友們,如下圖所示。 下載地址 匯入Android Studio只需三步

雜談-Android原始碼AMS、PMS、WMS及部分原理機制

> 雜談——Android從啟動到程式執行發生的事情:http://blog.csdn.net/jonstank2013/article/details/51118563 > 【凱子哥帶你學Framework】Activity啟動過程全解析:http://blo

2017 github 上android 原始碼適合工作中開發

Android 開源專案第一篇——個性化控制元件(View)篇 包括ListView、ActionBar、Menu、ViewPager、Gallery、GridView、ImageView、ProgressBar、TextView、ScrollView、

常見dos命令win7測試

dmi all 分區 自己 刪除特定 系統版本號 協議 習慣 type 按下組合鍵:win + R ,輸入cmd進入Dos。 1、 cls :清屏命令。 2、 ver :查看系統版本號命令,winver彈出一個窗口顯示更詳細的系統版本號。 3、 dir 無參數 :查

TabTopAutoLayout【自定義頂部選項卡區域劃線動態選項卡數據且可滑動

註意事項 ecif margin 代碼分析 獨立 xml文件 回收 support mtab 版權聲明:本文為博主原創文章,未經博主允許不得轉載。 前言 自定義頂部選項卡布局LinearLayout類,實現帶下劃線且可滑動效果。【實際情況中建議使用RecyclerVie

win10中Android Studio 不含SDK 安裝後如何相關錯誤跳坑指南

端口 是你 tin nag 信息 代理服務 自己的 很慢 evel win10系統下載最新的Android Studio3.1.3打開界面,創建第一個helloworld的android app,爆紅一片,被坑了兩天,提示錯誤如下: gradle sync failed