加固的方案
这里采用第三方的加固工具,后续有兴趣可以研究一下自己实现加固的方案
因为大多数加固的服务都需要收费,所以采用了360加固宝。
360加固
可以在页面上登录后直接上传apk文件进行加固,此时会生成一个名称带enc的apk,虽然可以下载下来,但是此时无法安装成功,还需要对新的apk进行签名
签名是否能够自行处理这部分后续也可以研究,不过我们这里还是采用360加固内的签名功能:
- 签名需要一个jks证书,可以使用如下命令在任意机器生成
keytool -genkeypair -alias succez -keyalg RSA -keystore sign.jks
生成证书的过程中需要填入 姓名、单位、省市县、国家等信息,然后输入密码,最后别名已经设置在命令行了 2. 接着我们在360加固中创建签名,选择这个文件,刚才创建证书的时候对应的内容填入,不过我没有设置别名密码,尝试填入与密钥密码也没有异常出现 3. 设置好后在选择好签名的apk,此证书,再输入密码,即可开始签名 4. 签名成功后会生成带 sign 名称的apk文件,此时可以正常安装了
关于闪退
一般用 hbuilder 生成 apk,再使用 360 加固,然后还需要重新签名才能使用,这时候如果使用自己的证书签名,与之前打包的证书不一致,那么安装打开很可能闪退。需要使用打包 apk 的 jks 重新进行签名。如果 hbuilder 使用的云端证书,那么进入官网我的应用,找到 应用id,进入后确认有 app 名的条目,然后下载其 jks 证书 并且 查看 密码
评论