互联网有多少网站,淘宝客网站建设要注意什么,导航网站制作教程,润滑油东莞网站建设最近开发的一个应用要上架#xff0c;正常流程打完包后去加固#xff0c;由于以前一直用的是360的加固助手#xff0c;这里开始也是选择用它。
使用360加固#xff1a;
问题一、开始出现的问题是说应用未签名无法加固#xff0c;我明明是签名后打的包#xff0c;怎么会…最近开发的一个应用要上架正常流程打完包后去加固由于以前一直用的是360的加固助手这里开始也是选择用它。
使用360加固
问题一、开始出现的问题是说应用未签名无法加固我明明是签名后打的包怎么会没签名呢后面使用 java -jar apksigner.jar verify -v apk地址 命令查看发现是没有进行V1签名而360加固要求有v1,一查之下发现是Android6.0之前用V1,Android7.0之后用V2把自己项目的支持最低版本改为23以下重新打包发360发现可以加固了。
问题二、加固完后的APK发现无法安装。查了一下资料说啥的都有最后发现一个靠谱的是要进行再次签名处理说是经过加固后可能会破坏掉签名。下面重点记录一下重新签名
原理 (使用AndroidSdk 自带的apksigner.jar 文件进行签名 apksigner.jar文件在Android SDK 的安装路径下大致如此{D:\Program Files}\Android\Sdk\build-tools\X.X.X\lib在任意版本下都有该文件。
准备工作
先进入apksigner.jar文件所在的路径我的就是D:\Program Files\Android\Sdk\build-tools\30.0.3\lib 1、先查一下加固后的APK是否有进行签名
输入命令java -jar apksigner.jar verify -v apk地址
java -jar apksigner.jar verify -v D:\test\app-release_100_jiagu.apk DOES NOT VERIFY ERROR: Missing META-INF/MANIFEST.MF
出现上图说明没有签名其实加固前是有签名的只是加固后被破坏了这就需要进行再次签名。
2、使用如下命令签名
java -jar apksigner.jar sign --ks [签名文件路径] --ks-key-alias [alias的别名] --ks-pass pass:[密码] --key-pass pass:[密码] --out [签名后的新安装包路径] [待签名的安装包路径即是加固后的安装包路径] java -jar apksigner.jar sign --ks D:\myproject\test\XXX.jks --ks-key-alias XXX --ks-pass pass:XXX --key-pass pass:XXX --out D:\myproject\test\app-sign.apk D:\test\app-release_100_jiagu.apk
执行成功不会有信息提示可以去输出路径下查看是否有包我的如下: 提醒这个语句太长建议要细心一点出问题时检查是否语句输错了我就是这样错了几次发现都是语句输错了。
3、去验证签名后的APK是否签名重复1的语句只是APK变成了2签名后的
java -jar apksigner.jar verify -v D:\myproject\test\app-sign.apk 这是就是签名成功了然后就可以愉快的安装了。
如果不想降低自己的项目Android版本,可以使用腾讯加固。