總共分爲兩步
修改apk
使用bandizip
等軟件直接打開apk
,進行需要的修改,然後把META-INF文件夾中的xxx.RSA、xxx.SF和xxx.MF都刪掉
或者解壓apk到一個文件夾中進行修改並按照上述操作刪除文件後,然後壓縮成zip格式,壓縮完成後把壓縮文件後綴改爲apk
重新簽名apk
方法一:擁有.keystore簽名或.jks簽名(生成V1簽名)
執行命令(需要配置好java
環境,windows
也可以直接執行)
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore {簽名文件} {apk文件名} {簽名別名}
比如
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore janking.jks sample-release.apk janking
[簽名文件]
可以是keystore
文件,也可以是jks
文件
如果沒有java環境怎麼辦?
想辦法安裝咯
順便說一下怎麼生成簽名?
- 點擊
Android Studio
菜單欄Build
Generate Signed Bundle or APK
- 隨便 選擇APK 還是 Android App Bundle
Create New ...
key store path
選擇一個密鑰存儲的文件,在彈出來的框中輸入要生成密鑰的文件名- 完成!
方法二、擁有.pem和.pk8簽名(生成V2簽名)
使用SignApk.jar
(下載地址),輸入命令
java -jar SignApk.jar [-w] {.pem文件} {.pk8文件} {未簽名apk} {生成的apk}
[-w] 參數表示對整個jar包簽名
例如
java -jar SignApk.jar platform.x509.pem platform.pk8 old.apk new.apk
注意
如果之前安裝過其他簽名的該apk文件,修改簽名後會安裝失敗,需要卸載之前已安裝的應用