当前位置: 首页 > news >正文

android 资源文件混淆

AGP7.0以上引用AndResGuard有坑 记录下

  1. 在项目的build.gradle中添加如下
buildscript {ext.kotlin_version = "1.4.31"repositories {google()jcenter()maven {url "https://s01.oss.sonatype.org/content/repositories/snapshots/"}}dependencies {classpath "com.android.tools.build:gradle:7.2.2"classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
//        classpath "com.bytedance.android:aabresguard-plugin:0.1.0"classpath 'io.github.leon406:AndResGuard-gradle-plugin:1.2.23'// NOTE: Do not place your application dependencies here; they belong// in the individual module build.gradle files}
}
  1. 在app目录下新建脚本and_res_guard.gradle
apply plugin: 'AndResGuard'andResGuard {//mappingFile = file("./resource_mapping.txt")mappingFile = nulluse7zip = trueuseSign = truekeepRoot = falsecompressFilePattern = ["*.png","*.jpg","*.jpeg","*.gif","*.xml","*.json","*.html",
//            "assets.arsc","resources.arsc"]whiteList = [// your icon"R.mipmap.ic_launcher","R.mipmap.ic_launcher_round",// for fabric"R.string.com.crashlytics.*",// for umeng update"R.string.tb_*","R.layout.tb_*","R.drawable.tb_*","R.drawable.u1*","R.drawable.u2*","R.color.tb_*",// umeng share for sina"R.drawable.sina*",// for google-services.json"R.string.google_app_id","R.string.gcm_defaultSenderId","R.string.default_web_client_id","R.string.ga_trackingId","R.string.firebase_database_url","R.string.google_api_key","R.string.google_crash_reporting_api_key",//友盟"R.string.umeng*","R.string.UM*","R.layout.umeng*","R.drawable.umeng*","R.id.umeng*","R.anim.umeng*","R.color.umeng*","R.style.*UM*","R.style.umeng*",//融云"R.drawable.u*","R.drawable.rc_*","R.string.rc_*","R.layout.rc_*","R.color.rc_*","R.id.rc_*","R.style.rc_*","R.dimen.rc_*","R.array.rc_*"]sevenzip {artifact = 'com.tencent.mm:SevenZip:1.2.10'//path = "/usr/local/bin/7za"}/*** 可选: 如果不设置则会默认覆盖assemble输出的apk**///finalApkBackupPath = "${project.rootDir}/final.apk"
}
  1. 在app/build.gradle中引用第二步的脚本
apply from: 'and_res_guard.gradle'
  1. 其他环境配置
grade:gradle-7.3.3-bin.zip 
classpath "com.android.tools.build:gradle:7.2.2"
jdk:11
  1. 执行编译
    在这里插入图片描述
    附上demo:demo
http://www.lryc.cn/news/333700.html

相关文章:

  • 注册接口和前置SQL及数据生成及封装
  • 鸿蒙实战开发-通过输入法框架实现自绘编辑框
  • 深度学习中的注意力模块的添加
  • Docker 部署开源远程桌面工具 RustDesk
  • intellij idea 使用git ,快速合并冲突
  • AcWing26. 二进制中1的个数。三种解法Java
  • 【ADB】常见命令汇总(持续更新)
  • 【递归与递推】数的计算|数的划分|耐摔指数
  • 企业案例:金蝶云星空集成钉钉,帆软BI
  • 简单设计模式讲解
  • 基于springboot的社区医疗服务系统
  • 影院座位选择简易实现(uniapp)
  • 调用飞书获取用户Id接口成功,但是没有返回相应数据
  • STM32 GPIO输入检测——按键
  • Rustdesk二次编译,新集成AI功能开源Gpt小程序为远程协助助力,全网首发
  • 面试(03)————多线程和线程池
  • 纯CSS实现未读消息显示99+
  • 【C++】C++ primer plus 第十二章--类和动态内存分配
  • 分类预测 | Matlab实现GWO-LSSVM灰狼算法优化最小二乘支持向量机数据分类预测
  • 使用PHP进行极验验证码动态参数提取与逆向分析
  • 43.1k star, 免费开源的 markdown 编辑器 MarkText
  • ArcGIS Pro怎么进行挖填方计算
  • POLY - Survival Melee Weapons
  • 【ARMv7-M】| 01——阅读笔记 | 简介|应用程序级编程和内存模型
  • 用Python做一个4399游戏脚本原来这么简单 !(内含完整思路)
  • 【计算机网络】应用层——HTTPS协议详解
  • 私家侦探如何追踪难以找到的人?
  • 一文讲透亚马逊云命令行使用
  • 感染了后缀为.jayy勒索病毒如何应对?数据能够恢复吗?
  • 一键快速彻底卸载:Mac软件轻松删除,瞬间释放磁盘空间