android加固多渠道,android开发 Gradle多渠道打包以及集成360加固

android {

、、、

//加入360加固任务Task

task reinforceAppTask(dependsOn: 'assembleRelease') {

group "jiaGuApk"

doLast {

def currFile = new File(".")

//生成的apk的路径

def appFilePath = "F:\\apk"

File apkDir = new File(appFilePath)

File[] channelDirs = apkDir.listFiles()

for (int i = 0; i < channelDirs.length; i++) {

File lastFile = channelDirs[i]

println "channelDir 的值:" + lastFile.toString()

if (!lastFile.name.endsWith(".apk")) {

continue

}

println "360加固 begin"

def cmdBase = 'java -jar jiagu.jar'

def cmdLogin = cmdBase + " -login ${rootProject.ext.jiaGuUserName} ${rootProject.ext.jiaGuPwd}"

println "360加固 登录命令::" + cmdLogin.toString()

// println "360加固 rootProject.ext.storeFile.getCanonicalPath():" + rootProject.ext.storeFile.toString()

// println "360加固 rootProject.ext.storeFile.storePassword:" + rootProject.ext.storePassword.toString()

// println "360加固 rootProject.ext.storeFile.keyAlias:" + rootProject.ext.keyAlias.toString()

// println "360加固 rootProject.ext.storeFile.keyPassword:" + rootProject.ext.keyPassword.toString()

//导入签名keystore信息

def cmdImportSign = cmdBase + ' -importsign ' + rootProject.ext.storeFile.toString() + ' ' + rootProject.ext.storePassword + ' ' + rootProject.ext.keyAlias + ' ' + rootProject.ext.keyPassword

println "360加固 导入签名keystore信息: " + cmdImportSign.toString()

// //查看当前签名keystore信息

// def cmdShowSign = cmdBase + ' -showsign'

//

// def cmdConfig = cmdBase + ' -config -x86'

// //查看当前加固增强服务配置

// def cmdShowConfig = cmdBase + ' -showconfig'

// //版本查询

// def cmdVersion = cmdBase + ' -version'

//输出目录这里设置为当前目录

def outPath = new File("F:\\apk\\outputs")

//应用加固

def cmdJiaGu = cmdBase + ' -jiagu ' + lastFile.getPath() + ' ' + outPath.getCanonicalPath() + ' -autosign' + ' -automulpkg'

println "360加固 应用加固命令: " + cmdImportSign.toString()

execute360JiaGuCmd(cmdLogin)

execute360JiaGuCmd(cmdImportSign)

execute360JiaGuCmd(cmdJiaGu)

println "360加固---------------------------------------------end"

}

}

}

tasks.whenTaskAdded { theTask ->

if (theTask.name == "assembleRelease") {

theTask.dependsOn "cleanOutputsDir"

}

}

task cleanOutputsDir {

def outputsPath = getBuildDir().getAbsolutePath() + File.separator + "outputs" + File.separator

println "delete outputsPath=" + outputsPath

new File(outputsPath).deleteDir()

}

、、、

}

def execute360JiaGuCmd(cmd) {

def p = cmd.execute(null, new File(rootProject.ext.jiaGuPluginPath))

println "execute360JiaGuCmd执行CMD命令:" + p.text

p.waitFor() // 用以等待外部进程调用结束

println "execute360JiaGuCmd执行CMD 命令:" + p.exitValue()

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值