Android version and Linux Kernel version
一.Android版本與Linux內核的關系
?
| 英文名 | 中文名 | 版本號 | API level | 發布時間 | 內核版本 |
| ? | ? | 1.1 | ? | ?2008.9 | ? |
| ?Cucake | 紙杯蛋糕 | 1.5 | ?3 , NDK 1 | ?2009.4 | ?2.6.27 |
| ?Dount | 甜甜圈 | 1.6 | ?4 , NDK 2 | ?2009.9 | ?2.6.29 |
| ?Eclair | 松餅 | 2.0 | ?5 | ?2009.10 | ?2.6.29 |
| ?Eclair | 松餅 | 2.0.1 | ?6 | ? | ? |
| ?Eclair | 松餅 | 2.1 | ?7 , NDK 3 | ? | ?2.6.29 |
| ?Froyo | 凍酸奶 | 2.2.x | ?8?,?NDK 4 | ?2010.5 | ?2.6.32 |
| ?Gingerbread | 姜餅 | 2.3 - 2.3.2 | ?9 , NDK 5 | ?2010.12 | ?2.6.35 |
| ?Gingerbread | 姜餅 | 2.3.3 - 2.3.7 | ?10 | ? | ? |
| ?Honeycomb | 蜂巢 | 3.0 | ?11 | ?2011.2 | ? |
| ?Honeycomb | 蜂巢 | 3.1? | ?12 , NDK 6 | ?2011.5 | ? |
| Honeycomb | 蜂巢 | 3.2.x | ?13 | 2011.7 | ? |
| Ice Cream Sandwich | 冰激凌三明治 | 4.0.1 - 4.0.2 | ?14 , NDK 7 | 2011.10 | ?3.0.1 |
| Ice Cream Sandwich | 冰激凌三明治 | 4.0.3 - 4.0.4 | ?15 , NDK 8 | ? | ? |
| Jelly Bean | 果凍豆 | 4.1.x | ?16 | 2012.6 | ?3.0.31 |
| Jelly Bean | 果凍豆 | 4.2.x | ?17 | 2012.10 | ?3.4.39 |
| Jelly Bean | 果凍豆 | 4.3.x | ?18 | ? | ? |
| KitKat | 奇巧巧克力 | 4.4 - 4.4.4 | ?19 | 2013.9 | ? |
| Lollipop | ? | ?5.x | ?21,22 | ? | ?3.16.1 |
| Marshmallow | ? | ?6.0 | ?23 | ? | ?3.18.10 |
| Nougat | ? | ?7.0 | ?24 | ? | ? |
?
以下是每個版本的詳細分支,比如安卓4.4-kitkat,內部還有分支,分為4.4.1,4.4.2等等,下載的時候最好下載一個分支就好了,不然容量太大。
??二.下載源碼分為2大部分
1.Android源碼;
2.Android內核(Android? Linux Kernel);
三.如何下載Android內核
git clone git://android.git.kernel.org/kernel/common.git
四.如何查看Android內核的版本(代碼級查看)
在內核代碼目錄:
運行命令:git branch –a
運行實例
[root@localhost common]# git branch -a? (查看版本)
* android-2.6.36
? remotes/origin/HEAD -> origin/android-2.6.36
? remotes/origin/android-2.6.35
? remotes/origin/android-2.6.36
? remotes/origin/archive/android-2.6.25
? remotes/origin/archive/android-2.6.27
? remotes/origin/archive/android-2.6.29
? remotes/origin/archive/android-2.6.32
? remotes/origin/archive/android-gldfish-2.6.29
? remotes/origin/archive/android-goldfish-2.6.27
五.如何獲得指定版本的Linux內核
要想下載2.6.29內核,只要最后執行一下(進入下載后的目錄):
git checkout remotes/origin/archive/android-2.6.29?? (即上面列出的版本分支)
此時下載到的是2.6.29版本內核了
六.如何獲得Android某個版本的源碼
例如獲得Android1.5的源碼
repo init -u git://android.git.kernel.org/platform/manifest.git -b cupcake
repo sync
?
Android 1.5:Cupcake(杯子蛋糕)
Android 1.6:Donut(甜甜圈)
Android 2.0 / 2.1:Eclair(閃電泡芙)
Android 2.2:Froyo(冷凍憂格)
Android 3.0:Gingerbread(姜餅)
Android 3.5:Honeycomb(蜂巢)
Android 4.0:Ice Cream(冰淇淋)
?
本質上:
想取某個branch而不是主線上的代碼,我們需要用-b參數制定branch名字
?
七.如何獲取Android當前主干上最新版本的所有的sourcecode
repo?init?-u?git://android.git.kernel.org/platform/manifest.git
?
八.如何獲取需要某一個project的代碼
比如kernel/common,就不需要repo了,直接用Git即可
git?clone?git://android.git.kernel.org/kernel/common.git
九.列出本地所有分支?
git branch
十.如何獲取某個branch的代碼
如果需要某個branch的代碼,用git checkout即可。
?
比如我們剛剛獲取了kernel/common的代碼,那就先進入到common目錄,然后用下面的命令:
git?checkout?origin/android-goldfish-2.6.27?-b?goldfish??
這樣我們就在本地建立了一個名為goldfish的android-goldfish-2.6.27分支,代碼則已經與android-goldgish-2.6.27同步。
轉載于:https://www.cnblogs.com/qiengo/archive/2012/07/16/2593234.html
總結
以上是生活随笔為你收集整理的Android version and Linux Kernel version的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C#下把txt文件数据读进sql ser
- 下一篇: “多态枚举”数值如何判断?