安卓系統的ROM大體可分為“官方版”和“非官方版”兩種,“非官方版”比較繁雜,當看到自己比較滿意的ROM,卻因為機型不同或其他原因而無法直接使用,這時候就要進行“移植”!以移植CM7為例。
移植準備
- 你所使用機型必須有CM7
- 對方機型分辨率和自己機型分辨率相同
- 需要懂得刷機,以及遇到問題能自己解決的能力。
- 具有一定的ROM修改基礎
步驟方法
- 移植方法:
①備份你現在所使用機型的CM7
②解壓CM7,不同機型CM7可能解壓后的文件和文件夾都可能不同,但肯定會有system目錄,進入system文件夾,刪掉app和framework兩個文件夾,包括里面所有文件
③下載你需要移植的ROM,解壓后將system目錄下的app和framework文件夾復制到自己機型CM7的system目錄下(前提是對方機型此ROM沒有做odex優化,如果做了odex優化的,解決方法后面會提到)
④現在你可以打包你新做的CM7為zip了,如果你機型使用的recovery必須驗證簽名才能刷入,那么使用簽名工具為新的zip包簽名,反之不用。
⑤刷入手機,如果能開機,那么恭喜你,但成功開機不一定代表能夠完美使用,或許會有某些程序FC現象,那么,哪里出錯就修改包里的哪些文件,比如電話報錯,那么可以置換為你機型原版CM7中對應的電話相關程序等。總之,調試過程是非常重要的。
⑥如果不能正常開機,卡第一屏或者卡在開機動畫,那么提取對方機型ROM中system/lib/libandroid_runtime.so文件替換掉新作的rom中對應文件,此文件是android運行時庫,由于CM7版本不定期更新,版本發布時間相差較長的話這個文件將不通用。
⑦替換后重新打包,應該能開機了,開機可能性是非常大的,因為都是基于CM7制作的,只是應用和框架不同。
- odex機型移植方法
如果遇到對方機型已做odex優化,那么需要用到odextools工具來deodex處理。此工具使用方法,非常簡單。
①將下載的工具解壓,進入romdir文件夾,將對方機型解壓后的system整個目錄復制到romdir中
②現在運行軟件中的odextools.bat,按數字3,進行framework中jar文件的deodex處理
③以上處理完畢后,選擇數字1,進行app中apk文件的deodex處理
④將處理完畢后的app和framework目錄復制到自己機型CM7中替換原來文件
⑤ROM打包刷入測試。
以上是以CM7為例,大體介紹移植方法。