如何移植定製Android 4.4?


這是我的第一個回答,以前都在百度知道,現在準備轉戰知乎!感覺這裡是個很棒的地方!

---------------------------------------------------------------------------------------------------------------------------------

我自己是個刷機狂人,恰巧也愛好開發APP,因此對ROM移植和定製做過一些研究和了解。其實rom定製不需要多少的編程技巧(當然有基礎會更好),如果你只為定製你想要的一些功能,只要進行整合再重新打包就可以了。你可能會看到在很多論壇的rom發布者並沒有多少的java,c,c++知識,但他們可以弄出一些非常棒的rom。相反的如果你用過MIUI,華為的rom,Flyme等等,這很難是一個人弄出來的,需要一個團隊包括產品經理、設計師、測試人員、編碼人員等等。

--------------------------------------------------------------------------------------------------------------------------------

由於問題太過複雜,我也不可能回答的非常詳細畢竟知識有限,但希望可以幫助到那些需要這方面知識的人,因為在國內貌似很少有人出詳細的教程。

---------------------------------------------------------------------------------------------------------------------------------

1.首先是準備工作無論你是windows、linux還是mac都可以進行rom的定製,當然對於windows你需要一些工具來完成相應的工作。

這裡僅以windows為例,在定製之前需要以下的工具:

  • JDK(java development kit java開發組件,這個組件必須第一個被安裝,並且配置好環境變數)
  • Android kitchen搭建,為何叫安卓廚房,個人覺得非常的形象!因為你定製rom就像燒菜,燒菜需要廚房!對不對,所以你可以講android kitchen理解為定製rom所需要的一個環境。
  • Cygwin,這個東西是為了windows環境下開闢出一個類UNIX模擬環境(如果你是搞嵌入式開發的,那麼這個東東一定非常的熟悉)
  • Apktool/Apkmanager(Apktool可能是當今最為流行的apk工具包,由解包、打包、簽名程序組成。而Apkmanager是另一款apk反編譯利器,當Apktool不行的時候或許它可以排上用處)
  • Notepad/Editplus(這個在你修改代碼的時候需要用到,如果只用文本工具有點寒摻是否)
  • winrar/7-zip(解壓工具)

2.工具準備完畢後,先安裝JDK,JDK搞定後。安裝cygwin(建議從官網下載)。最後將下載好的kitchen放入cygwin/home/目錄下,下載下來的Kitchen名字很長,建議改成Kitchen。另外需要注意的一點是所有目錄的名稱不要有空格。

3.當你完成jdk/cygwin/kitchen的準備工作後,就可以使用cygwin進行rom的修改了!

-------------------------------------------------------圖1-1 cygwin主界面窗口-------------------------------------------------

4.接著你就要進行一些個人定製的修改行為了,這裡分兩種,一種是基於一個基本rom,另一種就是你木有一個基本rom(這種情況下你需要自己建立必要的文件夾和文件,因為框架就是這麼設定的,所以你必須要這麼做)。這裡還有一些細節操作,不贅述了。

5.這裡基本上已經可以進行需要的修改了,修改分兩種,一種是簡單的信息修改,這個通過Kitchen就可以做到。另一種是手動修改,這可以修改的東西非常的多,我也有很多不知道的地方,比如狀態欄的圖標修改、內置app的修改、啟動畫面的修改、各種腳本修改(優化腳本可優化各種速度,比如wifi腳本,wifi會變快,gps腳本,定位會變快。)、改變字體、主題修改、音頻效果修改等等,可以修改的地方也非常的多。

6.最後完成修改之後,依舊使用Kitchen進行打包就可以了。

基本上簡單的定製工作已經完成,非程序員做這些工作是絕對木有問題的,懂點皮毛都可以完成這些工作,但卻可以做出屬於你自己的ROM!

---------------------------------------------------------------------------------------------------------------------------------

當然還有大神可以直接從源代碼編譯做真正的rom,這個就比較麻煩了,需要類似Ubuntu環境,這裡等以後知識儲備夠了再進行補充,但是個人認為,上面這個方法真的夠用了,不過從底層的角度而言從源代碼編譯才是真正的做一個第三方的rom。

---------------------------------------------------------------------------------------------------------------------------------

最後推薦大家xda的這個版塊,想學rom定製,這裡有你需要的大部分知識!而你需要做的就是學習和實踐。

http://forum.xda-developers.com/android

如果覺得對你有幫助,請關注我,然後輕輕的點個贊吧!碼字不容易的。


1.Ubuntu系統

2.Google拉源碼

3.編譯通過

4.真機燒img

5.修改代碼

6.編譯代碼

7.真機燒img

8.驗證

9.CTS測試

10.提交CTS報告

11.發布產品

4.4機制變動很大,你也問的很抽象,大概作業流程如上


我來說一下源碼級的系統定製:

首先LZ得了解一個團隊,CyanogenMod;

Cyanogen團隊是目前全球最大的Android第三方編譯團隊;很多系統都是在其基礎上進行進一步定製的,比如MIUI和FlyMe;

其次我推薦一個CM系統定製的博文;這是我很佩服的一個大神的博客,極致詳細的講解;

從CM刷機過程和原理分析Android系統結構

當然中間會問題不斷,加上大區域網帶來的種種麻煩,都需一一克服;

總之就是:

1、CyanogenMod Downloads 在這個網址上找到一個CM已經定製過android4.4(CM11)的機器;

2、下載對應的源碼;

3、編譯源碼;

4、燒錄機器;

5、修改--編譯--燒錄無線循環;


推薦閱讀:

LOS如何從技術上適配 Nexus 以外機型?
華為手機有優點嗎?
國外有沒有基於 Android的深度定製ROM?如果沒有,為什麼?
為什麼華為手機內核開源了但是幾乎沒有原生安卓的Rom?
怎樣判斷一款手機對第三方ROM的支持度?

TAG:Android第三方ROM |