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的值,修改后地图功能应能正常使用。

相关推荐
zhangphil18 分钟前
Android ViewStub显示VISIBLE与消失GONE,Kotlin
android·kotlin
API小爬虫2 小时前
利用 PHP 爬虫获取京东商品详情 API 返回值说明及代码示例
android·爬虫·php
_一条咸鱼_8 小时前
深入剖析 Android Hilt 框架的依赖生命周期管理模块(六)
android·kotlin·android jetpack
_一条咸鱼_9 小时前
深入剖析 Android Hilt 的模块配置与初始化模块(五)
android·kotlin·android jetpack
斗锋在干嘛11 小时前
Android里面开子线程的方法
android
yangshuo128111 小时前
WSA(Windows 安卓子系统)过检测教程
android
jiet_h12 小时前
Kotlin 中 集合 Collection 的扩展方法完全指南
android·开发语言·kotlin
吃饭了呀呀呀12 小时前
🐳 《Android》 安卓开发教程 - 自定义 Toast
android·后端
斗锋在干嘛14 小时前
在Android中问AMS 和 PMS的区别和作用
android
雯0609~16 小时前
PHP:将关联数组转换为索引数组的完整示例
android·oracle·php