Android gradle 自动打包、加固

2019-06-14  本文已影响0人  _发强

前提条件:

需要在 build.gradle 文件中配置签名信息

新建一个 .sh 文件, eg: stage.sh

#!/bin/bash

# 添加加固配置  
BASE=/Users/xxxx/xxxxx/jiagu.jar   #这个配置 jiagu.jar 的完整路径
NAME=xxx     # 加固账号
PASSWORD=xxx  # 加固账号的密码

# 添加签名文件配置
KEY_PATH=/Users/xxxx/keystroe.jks  # 签名文件的完整路径
KEY_PASS=xxxx    # 签名文件密码,和别名密码共用
KEY_ALIAS=key0  # 签名文件别名

# APK 路径
APK_DIR=/User/xxx.../release  # 打包后的完整目录路径。 一般情况下会在 build 目录下。
TARGET_DIR=/xxx    #  APK 保存的目标路径

# 要先进入的 Project 的根目录
# cd .. 这个需要根据自己当前的 .sh 文件目录来执行。

echo "------------------ start -------------------"

# 清理一下build 目录
./gradlew clean

# 执行打包命令
./gradlew assembleProduct

# 获取 生成的 apk 文件路径。
APK_PATH=""
for file in `find ${APK_DIR} -name "*.apk"`
do
    APK_PATH=${file}
    echo "path = $APK_PATH"
done

echo "---------- Jiagu Begining ---------"

java -jar ${BASE} -version
# 加固
java -jar ${BASE} -login ${NAME} ${PASSWORD}
# 配置签名信息
java -jar ${BASE} -importsign ${KEY_PATH} ${KEY_PASS} ${KEY_ALIAS} ${KEY_PASS}
#开始加固
java -jar ${BASE} -jiagu ${APK_PATH} ${TARGET_DIR} -autosign

echo "---------- Jiagu End ---------"

# 后续操作视个人情况。

上述的 .sh 文件基本就这些。 然后我们需要到该文件所在目录去执行 .sh 文件。

执行时遇到 permission denied 问题

这个是因为当前目录没有执行 .sh 文件的权限。需要为文件添加可执行权限,执行此命令:chmod +x [fileName]

上一篇下一篇

猜你喜欢

热点阅读