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

Android 开启混淆R8编译问题处理

Android R8是一个代码混淆和压缩工具,可以将应用程序的大小和安全性优化。它引入了一些新功能,如成员内省、混淆指针、类内省等。

        但R8使用起来一直不友好,因为自从使用R8之后编译问题不断。主要还是和混淆相关,经常报错,最近又遇到一个:

        Missing classes detected while running R8. Please add the missing classes or apply additional keep rules that are generated in you path to mmissing_rules.txt

        根据提示,根据报错提示找到app -> build -> outputs -> mapping -> ${app_name}-> missing_rules.txt文件,打开查看里面是提示的信息:

-dontwarn com.google.common.collect.Multimap
-dontwarn java.awt.Color
-dontwarn java.awt.Font
-dontwarn java.awt.Point
-dontwarn java.awt.Rectangle
-dontwarn javax.ws.rs.Consumes
-dontwarn javax.ws.rs.Produces
-dontwarn javax.ws.rs.ext.MessageBodyReader
-dontwarn javax.ws.rs.ext.MessageBodyWriter
-dontwarn javax.ws.rs.ext.Provider
-dontwarn net.i2p.crypto.eddsa.EdDSAEngine
-dontwarn net.i2p.crypto.eddsa.EdDSAPrivateKey
-dontwarn net.i2p.crypto.eddsa.EdDSAPublicKey
-dontwarn net.i2p.crypto.eddsa.math.GroupElement
-dontwarn net.i2p.crypto.eddsa.spec.EdDSANamedCurveSpec
-dontwarn net.i2p.crypto.eddsa.spec.EdDSANamedCurveTable
-dontwarn net.i2p.crypto.eddsa.spec.EdDSAParameterSpec
-dontwarn net.i2p.crypto.eddsa.spec.EdDSAPrivateKeySpec
-dontwarn net.i2p.crypto.eddsa.spec.EdDSAPublicKeySpec
-dontwarn org.slf4j.impl.StaticLoggerBinder
-dontwarn org.vclusters.R$layout
-dontwarn springfox.documentation.spring.web.json.Json
-dontwarn sun.reflect.annotation.AnnotationType

把上面这些提示信息加入到模块的proguard-rules.pro混淆配置文件中即可解决。


http://www.kler.cn/a/388965.html

相关文章:

  • Spark 核心概念与宽窄依赖的详细解析
  • 怎么监控员工电脑?分享5个监控员工电脑的绝佳方法(立竿见影!建议收藏!)
  • 使用HTML、CSS和JavaScript创建动态圣诞树
  • 给查询业务添加redis缓存和缓存更新策略
  • 零基础玩转IPC之——海思平台实现P2P远程传输实验(基于TUTK,国科君正全志海思通用)
  • 第二天python笔记
  • nVisual前端目录结构
  • [MySQL#14] 视图 | 用户管理 | 权限设置
  • RTOS IOT 结构
  • 速盾:游戏盾的功能和原理详解
  • 【HarmonyOS NEXT】一次开发多端部署(以轮播图、Tab栏、列表为例,配合栅格布局与媒体查询,进行 UI 的一多开发)
  • 【SQL】在 SQL Server 中创建数据源是 MySQL 数据表的视图
  • 如何编译安装LNMP环境
  • 论文阅读:人工智能赋能源网荷储协同互动的应用及展望
  • ZISUOJ 2024算法基础公选课练习二
  • WAL日志
  • 逐行加载 HTML 内容并实时显示效果:使用 wxPython 的实现
  • c++中的变量与常量
  • 绿色未来的关键:先进氢气压力容器技术取得重大进展
  • PHP API为什么要使用多种提交方式
  • Linux的基本指令(一)
  • 数仓工具—Hive语法之窗口函数中的order by
  • mybatisgenerator生成mapper时报错
  • Chapter1:python数据结构与算法
  • 解耦与模块化:鸿蒙平台上的服务注册与查找机制
  • 【Ubuntu】ubuntu 22.04 设置 Xorg 弃用 Wayland