使用gradle集成360加固

原创 2017年07月10日 16:33:20

360加固我想大家并不陌生,使用起来也比较简单。只要下载它的加固助手上传我们打包签名好的APK文件就可以完成加固。但我们是否可以让他更加的便捷呢?答案是肯定的。

1.准备

首先我们下载360加固助手。这里我使用Windows版来说明。

这里写图片描述

解压后我们将jiagu文件夹放到我们项目的根目录中。

因为360加固支持命令行方式加固,并且提供了详细的命令操作。因此我们可以使用sh脚本来实现。执行sh脚本需要我们的电脑提前安装 Cygwin

2.集成

1.首先我们写执行的脚本(jiagu.sh):

#!/bin/bash

BASE=../jiagu/jiagu.jar
NAME=360加固账号
PASSWORD=360加固账号的密码
KEY_PATH=../app/keystore/test.jks #密钥路径
KEY_PASSWORD=111111 #密钥密码
ALIAS=test #别名
ALIAS_PASSWORD=111111 #别名密码

APK=$1   #需要加固的apk路径
DEST=$2  #输出加固包路径 

echo "------ running! ------"

java -jar ${BASE} -version
java -jar ${BASE} -login ${NAME} ${PASSWORD}
java -jar ${BASE} -importsign ${KEY_PATH} ${KEY_PASSWORD} ${ALIAS} ${ALIAS_PASSWORD}
java -jar ${BASE} -showsign
#java -jar ${BASE}/jiagu.jar -importmulpkg ${BASE}/多渠道模板.txt #根据自身情况使用
java -jar ${BASE} -showmulpkg
java -jar ${BASE} -showconfig
java -jar ${BASE} -jiagu ${APK} ${DEST} -autosign

echo "------ finished! ------"

#-login          <username>                    首次使用必须先登录 <360用户名>
#                <password>                    <登录密码>

#-importsign     <keystore_path>               导入签名信息 <密钥路径>
#                <keystore_password>           <密钥密码>
#                <alias>                       <别名>
#                <alias_password>              <别名密码>

#-importmulpkg   <mulpkg_filepath>             导入多渠道配置信息,txt格式
#-showsign                                     查看已配置的签名信息
#-showmulpkg                                   查看已配置的多渠道信息
#-help                                         显示帮助信息

#-config         [-update]                     配置加固可选项 【升级通知】
#                [-crashlog]                  【崩溃日志】
#                [-x86]                       【x86支持】

#-showconfig                                   显示已配置加固项
#-version                                      显示当前版本号
#-update                                       升级到最新版本

#-jiagu          <inputAPKpath>                加固命令 <APK路径>
#                <outputPath>                  <输出路径>
#                [-autosign]                  【自动签名】
#                [-automulpkg]                【自动多渠道】
#                [-pkgparam mulpkg_filepath]  【自定义文件生成多渠道】

上面就是我们编写好的脚本代码,上面有详细的注释,大家只需要填写自己的信息即可。

最后我们将此脚本放入之前的jiagu文件夹。

这里写图片描述

2.gradle集成

这里写图片描述

上图是打包时Run build的最后Task,可以看到是assembleRelease。我们执行脚本的时间也就在assembleRelease之后。所以有如下代码:

afterEvaluate {
    android.applicationVariants.all { variant ->
        variant.assemble.doLast {
            if (variant.buildType.name.contains('release')) {
                def apkPath = variant.outputs.get(0).outputFile as File
                exec {
                    ignoreExitValue true
                    commandLine "sh", "../jiagu/jiagu.sh", apkPath, apkPath.getParent()
                }
            }
        }
    }
}

我们将它加入我们项目的appbuild.gradle中。代码中的apkPathapkPath.getParent()就是我们sh脚本中的APKDEST

3.使用

Terminal中执行gradlew assembleRelease

这里写图片描述

输出:

这里写图片描述

注意:如果出现类似$’\r’: command not found的错误。可以使用Notepad++打开文件,编辑–>文档格式转换–>转换为UNIX格式–>保存进行处理即可。

4.参考

51建设Android版一些技术整理

最后,请喜欢的点赞哦,你的鼓励是我的动力!

版权声明:本文为博主原创文章,未经博主允许不得转载。http://blog.csdn.net/qq_17766199

相关文章推荐

注解+代理 模仿 Retrofit 传参

前几天学习了一下注解和代理。这里记录一下使用自定义注解 + 动态代理,来模仿 Retrofit 的传参方式。注解Java 元注解有四种,这是系统定义的用于定义注解时,区分他们的不同作用。 @Targ...
  • lv_fq
  • lv_fq
  • 2017年05月31日 11:11
  • 456

《Android源码设计模式解析与实战》读书笔记(七)

第七章、策略模式 通常如果一个问题有多个解决方案时,最简单的就是利用if-else或者switch-case方式根据不同的情景选择不同的解决方案,但是这样耦合性太高 、代码臃肿、难以维护等。这时就...

Jenkins+Tomcat + Gradle + Tinker + Walle + 360加固 + fir.im 持续集成,自动构建

先介绍一下为什么要用这么一大堆东西。。。。 阶段一 开发了一个简单的app 每次打包只需要./gradlew assembleRelease,然后等待几分钟,就可以得到一个安装包。 使用360加固助...

Gradle IDEA集成插件的使用

转自:http://www.jianshu.com/p/ff7ba0efc993 IDEA中Gradle插件的使用 Idea本身已经集成了Gradle插件,你可以在File | Setti...

使用Gradle构建构建一个Java Web工程及持续集成环境Jenkins配置

阅读目录 安装Eclipse插件——Buildship安装Eclipse插件——Minimalist Gradle Editor【可选】Gradle安装Eclipse上创建Gradle工程Ecl...

Android Studio使用Gradle实现自动打包,签名,自定义apk文件名,多渠道打包,集成系统签名证书【附效果图附源码】

转载请注明出处,原文地址:http://blog.csdn.net/lucherr/article/details/72436018         接触Android Stuidio有一阵子了,...
  • lucherr
  • lucherr
  • 2017年05月18日 00:06
  • 1442

使用 Gradle 构建工具实现 Spring 集成 MyBatis (使用 Java 注解方式)

使用 Gradle 构建工具实现 Spring 集成 MyBatis (使用 Java 注解方式)1、添加依赖compile 'org.springframework:spring-core:4.1....

Https安全请求验证集成Gradle

  • 2016年07月27日 16:09
  • 39KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:使用gradle集成360加固
举报原因:
原因补充:

(最多只允许输入30个字)