使用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 举报

相关文章推荐

Android 7.0脱坑指南

这篇文章所写的前三个问题是自己现实遇到的,后三个是收集来的没有验证,作为记录以备不时之需。

lombok-@Accessors注解

@Accessors一个为getter和setter设计的更流畅的API实验性(experimental) lombok中有experimental的包 实验性因为: 1. 我们可能想将这些特性...

我是如何成为一名python大咖的?

人生苦短,都说必须python,那么我分享下我是如何从小白成为Python资深开发者的吧。2014年我大学刚毕业..

航空餐具百姓艾康入秋养生需“九防”

复造网址 大 中 小 大 中 小 大 中 小   渡过了暑热难打的严冬,时下已经进入秋天。从初秋到暮秋,人们应当如何度过秋天?衣食讫居等方点有哪些是须要多加关照和防备的处所?医生的忠告是不能该作耳旁风...

ChangeTabLayout实现过程

ChangeTabLayout是我模仿乐视LIVE App主界面的TabLayout效果实现的,希望大家多多支持。

Android listview viewpager解决冲突 滑动

Android listview viewpager 滑动 跳动 冲突解决 ListView中嵌套ViewPage有或者滑动手势冲突解决 在listview 上使用 addHeaderView ...

Android 头像选择(拍照、相册裁剪),含7.0的坑

作者:夏至,欢迎转载,但请保留这段申明,谢谢。首先,好规则,看看自己的实现效果: 当然,这个github 各种开源库,这里只讲 Android 自带的功能。其实这个也不难,关键点无非就2个: 7.0...

Android微信自动回复功能

Android微信自动回复功能 本文原创,转载请经过本人准许。 写在前面:最近接到老大的一个需求,要求在手机端拦截微信的通知(Notification),从而获得联系人和内容。之后将联系人和内容发...

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...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

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