![[Android] 重新打包(替换)签名APK,第1张 [Android] 重新打包(替换)签名APK,第1张](/aiimages/%5BAndroid%5D+%E9%87%8D%E6%96%B0%E6%89%93%E5%8C%85%28%E6%9B%BF%E6%8D%A2%29%E7%AD%BE%E5%90%8DAPK.png)
对于已经签名好的APK,我们可能因为修复问题、逆向等原因需要替换其中的so或者jar之类的部分,如果是本地测试替换so,倒是可以通过Root设备来直接替换。但如果是Java部分或者非Root设备就不能直接换了,要重新签名打包一下APK。
下面记录一下重新替换so再打包签名的办法:
(1)下载ApkTool工具,该工具用于解包、重新打包都非常好用
https://ibotpeaches.github.io/Apktool/install/
下载其中的 apktool_x.x.x.jar 就可以了。
(2)先解包:对已经签名的APK执行如下命令
java -jar apktool的jar文件 d(表示反编译) 要解包的apk -o(输出) 输出文件名# 例如(默认会输出同名文件夹到当前同级路径):java -jar apktool_2.3.4.jar d auto_480_release.apk
(3)替换输出文件夹中的内容,例如替换so文件到文件夹内
(4)再打包:对刚才的输出目录重新打包为APK
# 针对上面输出目录重新打包,默认会输出到dist子目录(会有提示):java -jar apktool_2.3.4.jar b auto_480_release
(5)在输出的dist目录中可以看到重新打包好的APK,注释是没有签名的,要重新签一下名:
jarsigner -keystore 签名文件完整路径 -signedjar 要输出的签名APK名 上一步打包好的APK路径 签名的别名# 例如:jarsigner -keystore /Users/kuliuheng/workspace/androIDWorkspace/androID.keystore -signedjar auto_480_release_signed.apk auto_480_release.apk testalias
(6)验证签名:
总结以上是内存溢出为你收集整理的[Android] 重新打包(替换)签名APK全部内容,希望文章能够帮你解决[Android] 重新打包(替换)签名APK所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)