Android_360加固

本文目标

使用360加固保来加固项目

步骤

一.下载360加固保


需要自己创建账号,本文用Mac为例,点击Mac下载

二.复制文件到项目中

把jiagu文件夹整体复制到项目根目录中,我这里改了个名字为360jiagu


三.创建360protect.gradle文件到项目跟目录中

/**
 *   -login <username>                       首次使用必须先登录 <360用户名>
 *                 <password>                              <登录密码>
 *         -importsign <keystore_path>             导入签名信息 <密钥路径>
 *                 <keystore_password>                     <密钥密码>
 *                 <alias>                                 <别名>
 *                 <alias_password>                        <别名密码>
 *         -importmulpkg <mulpkg_filepath>         导入多渠道配置信息,txt格式
 *         -showsign                               查看已配置的签名信息
 *         -showmulpkg                             查看已配置的多渠道信息
 *         -deletemulpkg                   清除已配置的多渠道信息
 *         -help                                   显示帮助信息
 *         -config                                 配置加固可选项
 *         ----------------------可选增强服务-------------------------------
 *                 [-crashlog]                             【崩溃日志分析】
 *                 [-x86]                                  【x86支持】
 *                 [-analyse]                              【加固数据分析】
 *                 [-nocert]                               【跳过签名校验】
 *                 [-piracy]                               【盗版监测】
 *         ----------------------高级加固选项-------------------------------
 *                 [-vmp]                                  【全VMP保护】
 *                 [-data]                                 【本地数据文件保护】
 *                 [-assets]                               【资源文件保护】
 *                 [-filecheck]                            【文件完整性校验】
 *                 [-ptrace]                               【Ptrace防注入】
 *                 [-so]                                   【SO文件保护】
 *                 [-dex2c]                                【dex2C保护】
 *                 [-string_obfus]                         【字符串加密】
 *                 [-dex_shadow]                           【DexShadow】
 *                 [-so_private]                           【SO防盗用】
 *                 [-double_check]                         【双开检测】
 *         -----------------------------------------------------------------
 *         -config_so                      配置需要加固的SO文件,以空格分隔
 *         -config_assets                  配置需要忽略的资源文件,以空格分隔
 *         -config_so_private              配置防盗用的SO文件,以空格分隔
 *
 *         -showconfig                             显示已配置加固项
 *         -version                                显示当前版本号
 *         -update                                 升级到最新版本
 *         -jiagu <inputAPKpath>                   加固命令 <APK路径>
 *                 <outputPath>                            <输出路径>
 *                 [-autosign]                             【自动签名】
 *                 [-automulpkg]                           【自动多渠道】
 *                 [-pkgparam mulpkg_filepath]             【自定义文件生成多渠道】
 */

// 签名配置
ext {
    signing = [
            keyAlias     : 'mall',
            keyPassword  : '123456',
            storeFile    : "../as_key_store",
            storePassword: '123456'
    ]

// app相关的配置
    app = [
            //默认release apk的文件路径,因为加固是基于release包的
            releasePath: "${project.buildDir}/outputs/apk/release",
            //对release apk 加固后产生的加固apk地址
            packersPath: "${project.buildDir}/outputs/packers",
    ]

// 360加固配置
    packers = [account : '***********', //账号,替换成自己的账号
               password: '******',  //密码,替换成自己的密码
               jarPath : "../360jiagu/jiagu.jar",  //执行命令的jar包路径
    ]
}

task protect360() {
    dependsOn("assembleRelease")
    doLast {
        println 'packers===beginning 360 jiagu'
        def releaseApkDir = file(app["releasePath"])
        def releaseApk = null
        releaseApkDir.eachFile { file ->
            if (file.isFile() && file.name.endsWith(".apk")) {
                releaseApk = file
                return
            }
        }
        def packerDir = new File(app["packersPath"])
        if (!packerDir.exists()) {
            packerDir.mkdirs()
        }
        exec {
            // 登录360加固保
            executable = 'java'
            args = ['-jar', packers["jarPath"], '-login', packers["account"], packers["password"]]
        }
        exec {
            // 导入签名信息
            executable = 'java'
            args = ['-jar', packers["jarPath"], '-importsign', signing["storeFile"], signing["storePassword"], signing["keyAlias"], signing["keyPassword"]]
        }
        exec {
            // 查看360加固签名信息
            executable = 'java'
            args = ['-jar', packers["jarPath"], '-showsign']
        }
        exec {
            // 初始化加固服务配置
            executable = 'java'
            args = ['-jar', packers["jarPath"], '-config']
        }
        exec {
            // 执行加固,然后自动签名,若不采取自动签名,需要自己通过build-tools命令自己签名
            executable = 'java'
            args = ['-jar', packers["jarPath"], '-jiagu', releaseApk.absolutePath, app["packersPath"], '-autosign']
        }
        println 'packers===360 jiagu finished'
        println "packers===360 jiagu path ${app["packersPath"]}"
    }
}

在app中的build.gradle文件中应用

apply from: '../360protect.gradle'

四.使用

360加固是基于release包进行加固的的,可以在Terminal中输入

./gradlew protect360

也可以在app--->Tasks---> other--->protect360
加固成功后apk路径:

/Users/houyadong/iProject/ASProj/app/build/outputs/packers/app-release_10_jiagu_sign.apk 
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 211,290评论 6 491
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,107评论 2 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 156,872评论 0 347
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,415评论 1 283
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,453评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,784评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,927评论 3 406
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,691评论 0 266
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,137评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,472评论 2 326
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,622评论 1 340
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,289评论 4 329
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,887评论 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,741评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,977评论 1 265
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,316评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,490评论 2 348

推荐阅读更多精彩内容