首先,清楚了解這款機型的硬件配置,也就是主板平臺方案,分辨率等等。通常同壹系列不同型號CPU的ROM封裝移植成功率較高。
選擇合適的基礎包和移植包,基礎包和移植包盡量同源。
找出基礎包和移植包的區別:目的是了解需要做哪些改變才能使其他型號的ROM在自己的機型上可用,並對基礎包、原生包和移植包進行交叉對比。
卡ROM條件:
該計算機必須首先是ROOT用戶。
必須有受支持的第三方恢復。如果沒有第三方恢復,只能從機器上逆向提取移植。
ROM支持卡刷,對於小白來說,卡刷ROM也是最方便的。
移植思路和步驟:
底層硬件驅動不同(內核)。
刪除遷移包中的boot.img(內核)和system\lib下的modules文件夾。替換這個模型的內核文件。
密鑰配置不同(密鑰值)。
將遷移包system\usr下的keychars和keylayout文件夾替換為此型號的文件夾。
不同的傳感器(驅動類型)
將遷移包system\lib下的hw文件夾替換為此型號的文件夾。
不同的系統配置文件(驅動程序類)
將遷移包system\etc下的藍牙、固件、權限、wifi四個文件夾替換為此型號的文件夾(如果有);
其中固件中的modem.img就是負責通信的基帶文件!模塊中的文件是底層的引導驅動程序。只要把這兩個地方換成KIS1,這個ROM就能正常開機進入系統,有信號!
還有enhanced.conf、media_profiles.xml(多媒體配置文件,即視聽配置文件)、vold.fstab(存儲分區配置文件);
最後,註意系統下是否有廠商和wifi文件夾,可以直接用文件比較器進行比較和修改;
修改build.prop(屬性)
直接修改用戶自定義內容,如型號、日期、版本號等。如果您理解該參數,您可以修改它。如果不了解,建議不要動,要修改型號,日期,版本號等。
修改更新程序腳本(畫筆腳本)
不同型號的ROM,刷腳本包含的分區掛載和格式化命令是不壹樣的。如果不加修改直接用,掛載修改了不該改的分區,手機就有換磚的風險,前提是妳知道自己機器的分區結構。
腳本開頭有驗證模型,請刪除。例如,assert(get prop)= = get * * x | | get prop = =
取笑**xx)
這是驗證模型的代碼。如果不是,忽略它,或者將其更改為您自己的機器名。ROM封裝測試;打包測試,壹般如果內核兼容庫文件,庫文件兼容上層框架,至少刷完就可以開機了。
如果卡在fold以上,分析壹下原因,稍微調查壹下,主要看updater-script腳本有沒有問題,內核有沒有更換,傳感器等庫文件有沒有合理更換。
後續的BUG修復工作主要在etc、lib、lib\hw等文件夾中進行。
音響,攝像頭,傳感器,燈光。無線wifi,藍牙藍牙...哪個不能正常工作,用這些英文單詞搜索KIS1驅動,替換掉!