?文章來源地址http://www.zghlxwxcb.cn/news/detail-652797.html
?
谷歌在安卓13中對系統(tǒng)應(yīng)用添加了一層校驗驗證,你如果修改了系統(tǒng)app.那么原有的簽名加載后過不去驗證,會導(dǎo)致進不去系統(tǒng)卡第一屏或者進入系統(tǒng)后修改的app錯誤等等故障。
Android 13增加了新的apk簽名校驗機制,現(xiàn)在開機中它會對所有系統(tǒng)分區(qū)(可能包括system、system_ext、vendor、product等分區(qū))的apk也進行簽名校驗,這將導(dǎo)致如果你對apk進行修改,即使不重新簽名,手機重啟后也無法識別該apk,即使你重新簽名。那也有可能導(dǎo)致系統(tǒng)開機bug。
??????????????????第一種方法:反編譯framework.jar文件??????????????????
反編譯framework.jar文件在其dex中搜索“getMinimumSignature”,應(yīng)當可以找到一個名為"getMinimumSignatureSchemeVersionForTargetSdk"的函數(shù)。修改如下
.method public static getMinimumSignatureSchemeVersionForTargetSdk(I)I
.registers 2
.param p0, "targetSdk" # I
.line 620
const/16 v0, 0x1e
if-lt p0, v0, :cond_6
.line 621
const/4 v0, 0x2
return v0
.line 623
:cond_6
const/4 v0, 0x1
return v0
.end method
.method public static getVerityRootHash(Ljava/lang/String;)[B
.registers 3
.param p0, "apkPath" # Ljava/lang/String;
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;,
Ljava/lang/SecurityException;
?修改其中的"const/4 v0, 0x2"這行,把"2"改為"1",然后反編譯回去替換原文件即可。
這是一種修改方法 。而且實測確實可以過簽名驗證。但機型不同。個別修改這個文件會導(dǎo)致系統(tǒng)運行的有些bug
????????????第二種方法;反編譯系統(tǒng)文件service.jar文件??????????????????
搜索代碼
getMinimumSignatureSchemeVersionForTargetSdk,選中invoke-static到move-result兩行
更換為const/4 v*, 0x0
注意;*是move result后面的數(shù)字,其實性質(zhì)與第一種方法大同小異。
invoke-static {v0}, Landroid/util/apk/ApkSignatureVerifier;->getMinimumSignatureSchemeVersionForTargetSdk(I)I
move-result v0
修改為
.line 1113
iget-object v0, p1, Landroid/content/pm/PackageInfo;->applicationInfo:Landroid/content/pm/ApplicationInfo;
iget v0, v0, Landroid/content/pm/ApplicationInfo;->targetSdkVersion:I
.line 1114
const/4 v*, 0x0
.line 1116
.local v0, "minSignatureScheme":I
invoke-static {}, Landroid/content/pm/parsing/result/ParseTypeImpl;->forDefaultParsing()Landroid/content/pm/parsing/result/ParseTypeImpl;
move-result-object v1
以上兩種方法只限于修改了系統(tǒng)app而后操作的去簽名驗證。常規(guī)刪減操作與這個沒有關(guān)系。另外安卓13區(qū)別與低安卓版本。有個別系統(tǒng)app修改后雖然去簽名驗證后開機但也有一點bug。
文章來源:http://www.zghlxwxcb.cn/news/detail-652797.html
?
到了這里,關(guān)于玩機搞機---修改系統(tǒng)固件不開機 安卓13去除系統(tǒng)app簽名驗證的幾種方法的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!