Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> 編譯miui的recovery實例教程

編譯miui的recovery實例教程

編輯:關於Android編程

今天好不容易有點時間,就寫的東西出來吧。感覺miui的recovery的第三方的編譯是最簡單的,這點比較喜歡,對於我們來說當然是越簡單越好了。OK,廢話不多說,進入主題:

1、先克隆miui的recovery源碼

在終端運行:git clone https://github.com/MiCode/miui_recovery.git //這是patchrom上面的,完整版

git clone https://github.com/miuicode/MIUI_Recovery.git //這是格諾精簡的rec,適合rec分區小的手機

以上兩種可以看大家自己的心情選擇了,個人喜歡格諾精簡的這個,只要是小,該有的還是有。

2、代碼下了之後進入rec目錄,首先看下docs文件夾的文檔吧,我覺得就應該養成這麼一個習慣,凡是先自己琢磨下,一般肯定都會帶幫助示例說明的。文檔裡面一來就有說明:整個工程需要拷貝 Android4.0 源碼中的 prebuilt, bionic,hardware 目錄到 recovery 的目錄,那我們就滿足它,從4.0的代碼拷到rec目錄(注意這裡必須是ICS的,不要圖方便搞其他的,要不然編譯有你受的)。其實它的文檔說的挺明白的,就是太多錯誤了。

3、原理性的東西我不講多少,我就只說怎麼搞肯定是可以編譯成功出結果的,大家理解下。首先:

cd patch_devices //進入devices

mkdir i6c //在裡面新建自己的機型rec目錄,然後把你機型官方的rec放裡面

unpackbooting -i recovery.img //解壓rec,unpackbooting工具在patchrom的tools裡面帶了,設置下環境或者全路徑訪問就行

解壓後在終端會打印一些屬性,把它復制下來,留著後面有用,我這邊的是:

BOARD_KERNEL_CMDLINE androidboot.hardware=qcom loglevel=1 vmalloc=200M
BOARD_KERNEL_BASE 00200000
BOARD_PAGE_SIZE 4096

mkdir new-ramdisk //新建一個文件夾,名字隨意吧,文檔是寫的這個,尊重下原作者吧

cd new-ramdisk //進入

gzip -dc ../recovery.img-ramdisk.gz | cpio -i //提取root文件系統

find -type l -exec rm -rf {} \; //找出鏈接文件並刪除

cd .. //回到上級一目錄

mv new-ramdisk root //將之前的new-disk改名為root

mv recovery.img-zImage kernel //將recovery.img-zImage改名為kernel

cp ../crespo/device.conf ./ //從crespo拷貝devices.conf模板

把剛剛拷貝devices.conf裡面的ini_set("rom_device", "Nexus S");改成自己的機型吧,不說他們都懂這裡的作用了。

cp ../crespo/Android.mk ./ //還是一樣拷目錄,熟悉android的人都知道這文件的作用了

把Android.mk打開修改成我們所需要的,我把下面的

MIUI_PRODUCT := crespo
MIUI_KERNEL := $(LOCAL_PATH)/kernel

MIUI_KERNEL_BASE := 0x30000000
MIUI_KERNEL_PAGESIZE := 4096 改成了

MIUI_PRODUCT := i6c //換成自己的機型名字
MIUI_KERNEL := $(LOCAL_PATH)/kernel

MIUI_KERNEL_BASE := 00200000 //還記得之前解壓讓大家復制出來的信息了不,在這裡就用上了
MIUI_KERNEL_PAGESIZE := 4096 //很巧這裡跟我們的一樣

最後回到rec源碼的根目錄:

先初始下環境:

. build/envsetup.sh

然後編譯你的rec

make i6c

等待編譯完成,然後在out/patch_devices你的機型目錄下就有recovery.img

到這裡,恭喜你,最基本的rec就編譯好了,可以拿下使用,一般都不會有問題,如果還有問題的話就直接去修改下源碼吧,一般都是什麼圖標錯誤、按鍵錯亂等等,這些放到其他文章來給大家分析下了。這次就到這...

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved