android apk 加固后的地图加载异常及重新签名

1.首先根据需求将打包生成后的APK进行加固,可以使用360、阿里、腾讯加固等。

2.加固后的APK无法直接安装,需要重新进行签名。

3.首先找到sdk的位置,进入build-tools目录。

4.根据gradle文件选择版本目录。

5.将加固后的APK放至该目录下。在此目录进入命令行

6.使用指令:zipalign -f -p -v 4 test.apk newtest.apk 对APK进行对齐操作,其中test.apk为加固后的apk名称,newtest.apk 为对齐后新生成的apk名称,两者名称不能相同。对齐成功后会显示Verification succesful

7.将该目录下对齐后的newtest.apk 文件拷贝到该目录下的lib文件夹中,然后进入该目录使用 cd lib 命令。

8.使用指令:java -jar aoksigner.jar sign --ks D:\android-keystore --ks-key-alias android.keystore newtest.apk 。其中第一部分红色为你自己签名的路径,第二部分为签名文件别名,第三部分为复制进该目录的已加固和已对齐的apk文件。回车后输入密码进行签名操作,如果没有任何提示则说明签名成功。

9.如果安装加固及签名后的apk后,apk中的地图或者定位不能正确加载时,则有可能是签名后SHA1值发生变化了。将apk文件后缀名修改为zip。

10.解压后找到META-INF目录,找到该目录下的CERT.RSA 文件或者ANDROID_.RSA(有些目录会是这个名字)。

11.在META-INF目录使用cmd进如命令行。

12.使用命令:keytool -printcert -file CERT.RSA 查看SHA1的值。

13.将SHA1的值赋值后,登录百度地图开发者平台后更改申请key的相对应的SHA1的值,修改后地图功能应能正常使用。

相关推荐
心平气和量大福大1 小时前
android-控件-搜索框SearchView
android·gitee
2601_962177131 小时前
【MySQL篇】聚合查询,联合查询
android·java·mysql
壮哥_icon1 小时前
【Android】批量 VectorDrawable 动态分别修改 fillColor 和 strokeColor 的踩坑与终极解决方案
android
齐天qaq3 小时前
Android 系统 APK 分区与权限
android
心平气和量大福大3 小时前
android-控件-多选框CheckBox
android·gitee
pengyu5 小时前
【Kotlin 协程修仙录 · 大乘境 · 初阶】 | 跳出三界:协程在 KMP 与后端开发中的跨平台之道
android·kotlin
XiaoLeisj5 小时前
Android Memory Profiler:堆内存指标、内存抖动与泄漏定位
android·性能优化·内存抖动·内存泄露·memory profiler
未来猫咪花5 小时前
Everything is ViewModel:让状态管理回到对象世界
android·flutter·ios
古法安卓5 小时前
Android-重启流程源码解析
android·java·android studio