360加固保
1.1、360加固保简介

360加固保奇虎360公司提供的APK加壳工具。

360加固保提供了GUI和命令行两种使用方式。

360加固保GUI使用方式只提供了Windows版本和macOS版本; 命令行使用方式支持WindowsGNU/LinuxmacOS等常见操作系统。

360加固保官网:http://jiagu.360.cn

1.2、下载360加固保

360加固保的下载地址:  http://jiagu.360.cn/qcmshtml/details.html#helper

根据自己的操作系统类型进行下载对应版本。这里要说明的是:我们在网页上看到的360加固保只有WindowsmacOS的版本。这是指的GUI使用方式, 实际上,在命令行使用方式下,macOS版也是支持GNU/Linux的。

1、下载:

Windows版下载:

curl -LO http://down.360safe.com/360Jiagu/360jiagubao_windows_32.zip

*nix版下载:

curl -LO http://down.360safe.com/360Jiagu/360jiagubao_mac.zip

2、解压:

unzip 360jiagubao_mac.zip

3、进入解压后的目录:

cd 360jiagubao_mac

4、查看目录结构:

这里的jiagu/jiagu.jar就是命令行的程序。

1.3、360加固保命令行的使用
1.3.1、java -jar jiagu/jiagu.jar -login <用户名> <密码>

这是用来在命令行下登录360移动开放平台的。

这个命令只需执行一次即可。

示例:

java -jar jiagu/jiagu.jar -login fpliu 123456
1.3.2、java -jar jiagu/jiagu.jar -importsign <keyStoreFile> <keyStorePassword> <keyAlias> <keyPassword>

导入签名信息的。把签名信息保存在jiagu/jiagu.db中了,它其实就是一个SQLite数据库。

这个命令只需执行一次即可。

示例:

java -jar jiagu/jiagu.jar -importsign .android/debug.keystore android androidDebugKey android
1.3.3、java -jar jiagu/jiagu.jar -jiagu <apkFile>

对指定的apkFile进行加固。加固的操作是在360的服务器上进行的,所以,首先进行上传, 加固完成后再下载下来,所以这个过程中要保持网络的连通性。而且速度以比较慢,请耐心等待。

示例:

java -jar jiagu/jiagu.jar -jiagu xx.apk
1.3.4、java -jar jiagu/jiagu.jar -jiagu <apkFile> -autosign

在加固的时候使用-autosign参数,360加固保就会对加固后的Apk进行v1签名, 但不进行v2签名

示例:

java -jar jiagu/jiagu.jar -jiagu xx.apk . -autosign
1.3.5、后续操作

1、使用360加固保做了加固,并进行了v1签名之后, 我们还需要对这个Apk进行字节对齐的优化:

zipalign -v 4 xx_jiagu_sign.apk xx_jiagu_sign_align.apk

2、为了兼容Android7.0以前的版本,也要照顾Android7.0之后的版版本, 我们的Apk一般同时进行v1签名v2签名,接下来我们就进行v2签名

apksigner sign --ks ~/.android/debug.keystore xx_jiagu_sign_align.apk

需要注意的是:这个命令直接把原Apk给修改了,请自行备份。

3、检查Apk的签名:

apksigner verify --verbose xx_jiagu_sign_align.apk

4、使用walle进行构建渠道包:

java -jar walle-cli.jar batch -c 1,2,3 xx_jiagu_sign_align.apk