当前位置:
首页 >
android开发 Gradle多渠道打包以及集成360加固
发布时间:2025/3/15
53
豆豆
生活随笔
收集整理的这篇文章主要介绍了
android开发 Gradle多渠道打包以及集成360加固
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
先上图
实现步骤:
1、设置渠道包的信息
在build.gradle里面添加代码
渠道包的代码就完了,读取自定义的参数,在Activity中得到值就行了
2、配置加固信息,记得下载360加固保的程序
在Build.gradle里面添加参数:
ext和 buildscript,allprojects是同一级别的
3、添加加固代码
在build.gradle里面添加代码
android { 、、、//加入360加固任务Tasktask 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.keyPasswordprintln "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.separatorprintln "delete outputsPath=" + outputsPathnew File(outputsPath).deleteDir()} 、、、 }def execute360JiaGuCmd(cmd) {def p = cmd.execute(null, new File(rootProject.ext.jiaGuPluginPath))println "execute360JiaGuCmd执行CMD命令:" + p.textp.waitFor() // 用以等待外部进程调用结束println "execute360JiaGuCmd执行CMD 命令:" + p.exitValue() }上面就是所有的代码了, 注意execute360JiaGuCmd方法 和android是同级的,在代码编写完成之后
点击 Sync Now 重新编译一次,就可以在android studio看到执行的程序了
双击运行 就可以看到最上面的效果图了
总结
以上是生活随笔为你收集整理的android开发 Gradle多渠道打包以及集成360加固的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: JavaWeb之Cookie,Sessi
- 下一篇: 链表队列出队算法