在 Android 上使用 R8 时,是不是需要卸载现有的 Proguard?

Posted

技术标签:

【中文标题】在 Android 上使用 R8 时,是不是需要卸载现有的 Proguard?【英文标题】:When using R8 on Android, do I need to uninstall my existing Proguard?在 Android 上使用 R8 时,是否需要卸载现有的 Proguard? 【发布时间】:2019-06-23 08:20:48 【问题描述】:

使用 R8 时是否需要从 Gradle 中移除 Proguard 相关代码?

minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'

【问题讨论】:

此链接***.com/a/52921486/8034839 可能会有所帮助。 【参考方案1】:

您实际上并没有删除 proguard 规则,因为 R8 在 compat 模式 下使用 Proguard 规则。更多详情请参考https://android-developers.googleblog.com/2018/11/r8-new-code-shrinker-from-google-is.html

R8 可用于 Android Studio 3.3 测试版,并适用于 Proguard 规则。要尝试它,请在项目的 gradle.properties 文件中设置以下内容:

android.enableR8=true

但是对于完整模式,它并不直接兼容Proguard。


编辑#1

在此处查看如何将 Proguard 迁移到 R8:Android/java: Transition / Migration from ProGuard to R8?

【讨论】:

以上是关于在 Android 上使用 R8 时,是不是需要卸载现有的 Proguard?的主要内容,如果未能解决你的问题,请参考以下文章

同时使用 ProGuard 和 R8

在 Android 中使用 R8 和 Proguard 时如何保护数据模型类免受逆向工程的影响?

在 Android Studio 中启用 R8 Shrinker 时超出 GC 开销限制

Android/Java 混淆:R8 与(ProGuard 或 DexGuard)?

Progruard 和 R8 被弃用 - Android Studio 3.6

Android R8 即时崩溃