APP 加固添加签名后无法安装

简介: 使用腾讯云加固,下载后再次签名,签名成功之后的 apk 在华为鸿蒙、Android8 系统可以正常解析安装,在Android11 解析安装包失败。

Android APK  加固重新签名

使用腾讯云加固,下载后再次签名,签名成功之后的 apk 在华为鸿蒙、Android8 系统可以正常解析安装,在Android11 解析安装包失败。


解析软件包时出现问题

cf45c8bd006a8ae1a654d44b7139925c.png


解决方案


使用 zipalign 工具进行对齐,再用 apksigner 重新签名就行了

zipalignapksigner 都由Google官方提供,安装 Android 环境的时候就装好了,使用时需要先配置环境变量, zipalignapksignerAndroid SDK/build-tools/SDK版本/目录


控制面板->系统和安全->系统->高级系统设置->高级->环境变量->系统变量path

image.gif897f87547039b597f5d6acfb2ae81f0d.png

zipalign 工具进行对齐


签名文件 keystore 和 apk 的目录下执行命令


对齐命令

zipalign -p -f -v 4 未对齐(jarsigner已签名)APK文件 生成的APK文件
zipalign -p -f -v 4 .\myapp1.apk .\myapp2.apk


验证对齐

zipalign -c -v 4 要验证的APK文件


image.gif966240f7000b42e8ca680fb2eb32d5c1.png


对齐成功,这时apk安装包直接安装会提示无效或不兼容


image.gifd92b1afc19a63eaa559d26e59e876cc3.png

apksigner 再次签名


apksigner sign --ks 密钥库文件 --ks-key-alias 密钥库别名 --ks-pass pass:密码 --v2-signing-enabled true -v --out 签名后的APK文件 要签名的(对齐后)APK文件


个人

apksigner sign --ks .\my-release-key.keystore --ks-key-alias my-key-alias --ks-pass pass:123456. --v2-signing-enabled true -v --out .\myapp3.apk .\myapp2.apk

出现 Signed 提示表示签名成功,这时加固后的APK就可以正常安装了。


目录
相关文章
|
7月前
|
存储 Java API
Android 浅度解析:mk预置AAR、SO文件、APP包和签名
Android 浅度解析:mk预置AAR、SO文件、APP包和签名
913 0
|
7月前
|
监控 安全 数据可视化
【教程】为什么要为 App 应用加固 ?如何为 App 应用加固 ?
【教程】为什么要为 App 应用加固 ?如何为 App 应用加固 ?
|
7月前
|
小程序 Android开发 iOS开发
uni-app 安装与配置
uni-app 安装与配置
120 1
|
2月前
|
开发工具 iOS开发 MacOS
【Mac_mistake】app不能安装在未命名需要OSv11.13或更高版本
【Mac_mistake】app不能安装在未命名需要OSv11.13或更高版本
94 0
|
4月前
|
Go PHP 数据安全/隐私保护
【应用服务 App Service】Azure App Service 中如何安装mcrypt - PHP
【应用服务 App Service】Azure App Service 中如何安装mcrypt - PHP
|
4月前
|
关系型数据库 Linux PostgreSQL
【Azure 应用服务】Azure Function App Linux环境下的Python Function,安装 psycopg2 模块错误
【Azure 应用服务】Azure Function App Linux环境下的Python Function,安装 psycopg2 模块错误
|
4月前
|
存储 安全 Linux
【Azure 应用服务】App Service For Linux 怎么安装Composer,怎么安装PHP扩展,怎么来修改站点根路径启动程序?
【Azure 应用服务】App Service For Linux 怎么安装Composer,怎么安装PHP扩展,怎么来修改站点根路径启动程序?
|
4月前
|
数据库 Python
【Azure 应用服务】App Service中运行Python 编写的 Jobs,怎么来安装Python包 (pymssql)呢?
【Azure 应用服务】App Service中运行Python 编写的 Jobs,怎么来安装Python包 (pymssql)呢?
|
4月前
|
网络协议 Linux Shell
【Azure 应用服务】App Service For Linux 中安装paping, 用于验证从App Service向外请求的网络连通性
【Azure 应用服务】App Service For Linux 中安装paping, 用于验证从App Service向外请求的网络连通性
|
4月前
【Azure Function】Function App和Powershell 集成问题, 如何安装PowerShell的依赖模块
【Azure Function】Function App和Powershell 集成问题, 如何安装PowerShell的依赖模块