Magisk了解以及簡單的模塊製作
- 2020 年 3 月 3 日
- 筆記
Magisk,就是刷機經常會需要使用的,也是就是我們說的面具或者臉譜。因為它的logo就是面具或者說臉譜。我們先簡單了解一下:
XDA上論壇的說明:Magisk – The Universal Systemless Interface, to create an altered mask of the system without changing the system itself.
的確,它確實是做到了,它和之前使用的xposed框架有着相似,那就是攔截。但不同之處,Magisk 則另闢蹊徑,通過掛載一個與系統文件相隔離的文件系統來加載自定義內容,為系統分區打開了一個通往平行世界的入口,所有改動在那個世界(Magisk 分區)里發生,在必要的時候卻又可以被認為是(從系統分區的角度而言)沒有發生過。
Magisk的安裝:
Magisk需要修改boot.img。比較正規的方法是通過是通過第三方rec刷入(記得留個卸載包)。當然,並不是所有的設備都支持官方的TWRP,實際上很多都是直接刷入了動了手腳的boot.img。至於,如何從固件提取boot,修補root重新打包。這裡不說那麽多,需要注意一點的是,magisk和SU衝突。
今天本片是記錄Magisk模塊製作的大概一個過程。至於為什麼要學習製作Magisk模塊,是因為搞機,華為、三星一些特殊的手機難搞。很不碰巧,我是個花粉,目前還在,因為窮。華為的EMUI9.1系統的erfos文件系統,天然只讀,MT、RE等工具即使在你get root之後仍然無法對…進行任何操作。這就徹底阻斷了我,修改一些文件的想法。但,突發奇想這個模塊可以幫我實現。但是搞機的大神,早就捨棄了華為,就像當初解鎖那樣,發現解鎖後並沒有什麼可用的。所以我決定自己去試着製作我需要的東西。
首先你需要一個官方文檔:https://github.com/topjohnwu/Magisk
你可以去官網尋找資料去構建試着目錄並下載一些必要的文件。下面為20.3的構建目錄:https://topjohnwu.github.io/Magisk/guides.html
當然也可以自己在網絡上尋找一個模板自己去修改使用,甚至你在一些已經能夠使用的模塊上加以修改使用。這樣可以更快避免出現一些玄學問題。通常情況裏面都會有注釋,雖然是英文的,只能自己一點一點看了。
最簡單的替換文件模板:
1、修改META-INF/com/google/android/update-binary 裏面的安裝信息
2、按路徑放入替換文件
3、修改module.prop中的模塊信息
試着做了兩個簡單的小模塊,測試成功。沒人做了自己要用,只好自己動手了。