360加固脚本
Nov 7, 2024 — Softwares
本脚本封装了 360 加固命令行工具,适用于 Mac 和 Linux 系统,可同时用于 apk 和 aab 文件。
- 请先下载 360 加固的命令行工具,并解压到当前工程目录下,重命名为 jiagu_cli。
- 配置 360 加固需要的 licence 字段,位于 jiagu_cli/licence 文件中。
- 在本脚本里配置好签名keystone相关字段,包括 keystore 路径、密码等。
#!/bin/bashset -e
# 全局keystore配置KEYSTORE_PATH="android/app/duoke.jks" # keystore路径KEYSTORE_PASSWORD="your_keystore_password" # keystore密码ALIAS="your_alias" # 别名ALIAS_PASSWORD="your_alias_password" # 别名密码
# 假设当前工程目录下存放360的jiagu_cli/startup脚本case "$(uname -s)" in Darwin) STARTUP_COMMAND="./jiagu_cli/startup" ;; Linux) STARTUP_COMMAND="./jiagu_cli/startup.sh" ;; *) echo "Unsupported OS"; exit 1 ;;esac
# 根据文件类型初始化全局变量init_file_variables() { FILENAME=$(basename -- "$FILE_PATH") DIRECTORY=$(dirname -- "$FILE_PATH") EXTENSION="${FILENAME##*.}" NEW_FILENAME="${FILENAME%.*}-jiagu.$EXTENSION"}
# keystore配置add_signature_config() { $STARTUP_COMMAND --config-sign-$EXTENSION add "$KEYSTORE_PATH" "$KEYSTORE_PASSWORD" "$ALIAS" "$ALIAS_PASSWORD"}
# 加固配置add_jiagu_config() { $STARTUP_COMMAND --config-jiagu-$EXTENSION update --x86 --cert-check --name "my_config" --pn "any"}
# 加固jiagu() { $STARTUP_COMMAND --jiagu-$EXTENSION "$FILE_PATH" "$DIRECTORY/$NEW_FILENAME" --auto-sign}
# 主函数start() { init_file_variables add_signature_config add_jiagu_config jiagu}
echo "This script will help you to sign your Android APK or AAB file using 360 jiagu."
# Check if a file path argument is providedif [ -z "$1" ]; then echo "Usage: $0 <file_path>" echo "Error: Please provide a valid apk or aab file path as an argument." exit 1fi
# Check if the provided file is APK or AABif [[ "$1" != *.apk ]] && [[ "$1" != *.aab ]]; then echo "Error: Unsupported file type. Please provide a valid APK or AAB file." exit 1fi
FILE_PATH=$1
# 将输出重定向到变量output=$(start 2>&1 | tee /dev/stderr)# 检查输出中是否包含错误信息if echo "$output" | grep -q "ERROR"; then echo "Failed"else echo "Done! The new file:$DIRECTORY/$NEW_FILENAME"fi