dev渠道添加应用加固流程
parent
3a1b4abe6b
commit
d17651925a
|
|
@ -43,3 +43,16 @@ Packages:
|
|||
- Bilibili@1.0.0
|
||||
- TalkingData@0.0.1
|
||||
|
||||
# 爱加密配置
|
||||
Encryption:
|
||||
ApiUrl: "https://runenc.ijiami.cn/common" # 爱加密API地址
|
||||
StrategyName: "Dev加固策略" # 加密策略名称
|
||||
Username: "PHXHJG" # 爱加密用户名
|
||||
Password: "LaMYRIx0UzFgCIR" # 爱加密密码
|
||||
ToolPath: "${WORKSPACE}/Tool/build_tools/encryptionTool-v4.3.6-202409.jar" # 加密工具路径
|
||||
NeedSign: true # 是否需要签名
|
||||
SignName: "朴合辛火安卓" # 签名名称
|
||||
SignVersion: 4 # 签名版本(1-8)
|
||||
RetryCount: 3 # 异常重试次数
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -49,3 +49,15 @@ Packages:
|
|||
- AliPay@0.0.1
|
||||
- ThinkingData@1.0.0
|
||||
- TalkingData@0.0.1
|
||||
|
||||
# 爱加密配置
|
||||
Encryption:
|
||||
ApiUrl: "https://runenc.ijiami.cn/common" # 爱加密API地址
|
||||
StrategyName: "Dev加固策略" # 加密策略名称
|
||||
Username: "PHXHJG" # 爱加密用户名
|
||||
Password: "LaMYRIx0UzFgCIR" # 爱加密密码
|
||||
ToolPath: "${WORKSPACE}/Tool/build_tools/encryptionTool-v4.3.6-202409.jar" # 加密工具路径
|
||||
NeedSign: true # 是否需要签名
|
||||
SignName: "朴合辛火安卓" # 签名名称
|
||||
SignVersion: 4 # 签名版本(1-8)
|
||||
RetryCount: 3 # 异常重试次数
|
||||
|
|
|
|||
|
|
@ -276,6 +276,72 @@ pipeline {
|
|||
}
|
||||
}
|
||||
}
|
||||
stage('加密应用') {
|
||||
steps {
|
||||
script {
|
||||
// 只在构建完整应用时进行加密
|
||||
if (params.Build_InitApp == true) {
|
||||
try {
|
||||
def playersettings = "${WORKSPACE}/Tool/Channels/${CHANNEL_PARAM}/ChannelSetting.yaml"
|
||||
def cfg = readYaml(file: playersettings)
|
||||
|
||||
// 读取加密相关配置
|
||||
def encryptConfig = cfg?.Encryption
|
||||
if (encryptConfig) {
|
||||
def apiUrl = (encryptConfig?.ApiUrl ?: '').trim()
|
||||
def strategyName = (encryptConfig?.StrategyName ?: '').trim()
|
||||
def username = (encryptConfig?.Username ?: '').trim()
|
||||
def password = (encryptConfig?.Password ?: '').trim()
|
||||
def toolPath = (encryptConfig?.ToolPath ?: '').trim()
|
||||
def needSign = (encryptConfig?.NeedSign ?: true)
|
||||
def signName = (encryptConfig?.SignName ?: '').trim()
|
||||
def signVersion = (encryptConfig?.SignVersion ?: 4)
|
||||
def retryCount = (encryptConfig?.RetryCount ?: 3)
|
||||
|
||||
// 构建APK路径
|
||||
def apkPath = "$WORKSPACE/Builds/$CHANNEL_PARAM/$PLATFORM_PARAM/$VERSION_PARAM/$APK_NAME"
|
||||
def outputDir = "$WORKSPACE/Builds/$CHANNEL_PARAM/$PLATFORM_PARAM/$VERSION_PARAM"
|
||||
|
||||
// 替换WORKSPACE变量
|
||||
toolPath = toolPath.replace('${WORKSPACE}', WORKSPACE)
|
||||
|
||||
// 构建加密命令
|
||||
def encryptCmd = "java -jar '${toolPath}' -t apk -u '${apiUrl}' -r '${username}' -w '${password}' -k '${apkPath}' -s '${strategyName}' -d '${outputDir}' -n '${APK_NAME}' -y ${retryCount}"
|
||||
|
||||
// 添加签名参数
|
||||
if (needSign) {
|
||||
encryptCmd += " -i true -g '${signName}' -v ${signVersion}"
|
||||
}
|
||||
|
||||
echo "开始加密应用..."
|
||||
echo "APK路径: ${apkPath}"
|
||||
echo "加密策略: ${strategyName}"
|
||||
echo "执行命令: ${encryptCmd}"
|
||||
|
||||
// 执行加密命令
|
||||
def encryptResult = sh(script: encryptCmd, returnStatus: true, returnStdout: false)
|
||||
|
||||
if (encryptResult != 0) {
|
||||
def message = "【${PLATFORM_PARAM}】【${VERSION_PARAM}】【Debug】【${CHANNEL_PARAM}】应用加密失败"
|
||||
SendMessageToWechat(message)
|
||||
error("Failure of the '加密应用' stage")
|
||||
} else {
|
||||
echo "应用加密成功!加密后的APK已覆盖原APK。"
|
||||
}
|
||||
} else {
|
||||
echo "警告:未在渠道配置中找到加密相关配置,跳过加密步骤。"
|
||||
}
|
||||
} catch (err) {
|
||||
def message = "【${PLATFORM_PARAM}】【${VERSION_PARAM}】【Debug】【${CHANNEL_PARAM}】应用加密过程中发生异常: ${err.getMessage()}"
|
||||
SendMessageToWechat(message)
|
||||
error("Failure of the '加密应用' stage")
|
||||
}
|
||||
} else {
|
||||
echo "增量更新模式,跳过加密步骤。"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
stage('上传资源') {
|
||||
steps {
|
||||
script {
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
Subproject commit 8a417e78faa934992729cc715fb256d5b2be90b2
|
||||
Subproject commit aca9817e446e72ce5ce653688bcb4866fe2be4d2
|
||||
Loading…
Reference in New Issue