用户登录
用户注册

分享至

Android---andresguard资源混淆

  • 作者: 欠我一场雪
  • 来源: 51数据库
  • 2021-08-28

未进行资源混淆时:

进行资源混淆后:


在gradle导入依赖:

   classpath 'com.tencent.mm:AndResGuard-gradle-plugin:1.2.18'

在app目录下新建一个and_res_guard.gradle,创建的方式可以复制一个build.gradle。内容如下:

apply plugin: 'AndResGuard'

buildscript {
    repositories {
        jcenter()
        google()
    }
    dependencies {
        classpath 'com.tencent.mm:AndResGuard-gradle-plugin:1.2.18'
    }

}
andResGuard {

    mappingFile = null
    use7zip = true
    useSign = true

    keepRoot = false

    fixedResName = "arg"

    mergeDuplicatedRes = true
    whiteList = [

    ]
    compressFilePattern = [
            "*.png",
            "*.jpg",
            "*.jpeg",
            "*.gif",
            "resources.arsc"
    ]
    sevenzip {
        artifact = 'com.tencent.mm:SevenZip:1.2.18'

    }
}

在原本app的build.gradle添加:

apply from: 'and_res_guard.gradle'

之后就可以开始任务。

但如果没有设置好签名的话,resguardRelease会报一个没有签名配置的错误

这时就需要配置签名:

    signingConfigs {
        release{
            keyAlias '123456'
            keyPassword '123456'
            storeFile file('C:/Users/SHENG/Desktop/1.jks')
            storePassword '123456'
        }
    }
signingConfig signingConfigs.release


然后就会生成4个apk包,我们选择签名、压缩、对齐后的apk即可,后缀名是*_signed_7zip_aligned.apk。


对做了资源混淆和未资源混淆的apk用killer进行反编译。
进行混淆过后,经过killer分析,可以看到对应的包名,内容则排好了序号。且未做任何修改进行回编译不了

软件
前端设计
程序设计
Java相关