问题标签 [android-r8]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
476 浏览

android - Gradle 在运行 Android 检测时忽略 testProguardFile

我正在尝试在发布构建类型上运行仪器测试。我的设置如下:

相关build.gradle片段:

proguard-rules-test.pro 的内容(用于测试目的):

运行任何检测都会导致以下运行时异常:

TestMyApplication扩展MyApplication并被AndroidJUnitRunner调用)

-keep行从proguard-rules-test.pro移动到主 Proguard 规则文件中,可以使测试运行并顺利通过。

有任何想法吗?

0 投票
1 回答
1904 浏览

android - 使用 R8 混淆应用程序会导致超出 GC 开销限制

我刚刚将 Android Studio 更新到v3.4.1

现在我在设置 minifyEnabled 时无法生成签名的应用程序true

我知道现在默认的代码收缩器是R8。正如日志所说,这就是问题所在。如果 minifyEnabled 设置为 ,我可以毫无问题地生成签名应用程序false

这发生在我所有的项目中。

运行:

  • 视窗 10 64 位
  • 内存 8 GB
  • 英特尔 i5 2320 处理器

我该如何解决?谢谢你


构建.gradle

proguard-rules.pro

完整日志

0 投票
2 回答
2365 浏览

android - 使用现有的 proguard 设置启用 R8 时应用程序崩溃

当 R8 与现有的 proguard 配置一起启用时,我得到了一个RuntimeException发布版本。检查“无法验证dex文件乱序annotation_element name_idx”没有运气,我没有在-overloadaggressively任何地方设置。还尝试根据“Android/java:从 ProGuard 到 R8 的转换/迁移?”禁用 ProGuard。,还是不行。

构建环境如下:

崩溃日志:

提前致谢!

0 投票
1 回答
2350 浏览

android - DexArchiveBuilderException 与 Firebase 性能监控库,R8 未能脱糖?

如果我什至只包含 Firebase 性能库,我几乎无法构建项目,它失败并出现以下异常,我不知道如何解决这个问题,因为它适用于较旧的 Android Studio 版本(我不确定哪个一),我正在使用性能插件 1.2.1 和性能库 17.0.2,这是本文最新的

0 投票
3 回答
865 浏览

android - 在我的 AAR 库中使用 consumerProguardFiles 并在使用混淆字典时获取文件未找到

在我的库中,我consumerProguardFiles发布构建类型中使用。我的proguard角色是:

当开发人员在项目中使用我的库(AAR)并获取 release build 和 use时,找不到minifyEnabled trueget :proguard-dictionary.txt

如何在-obfuscationdictionary不使用字典文件的情况下使用?或者我该如何解决这个问题?

0 投票
2 回答
1788 浏览

google-play-services - com.android.tools.r8.utils.AbortException zza 已经有一个映射

我正在运行仪器测试并收到此编译错误:

如果我查看,app/build/outputs/mappings/debug/mapping.txt我会看到该方法列出了两次。

  1. 奇怪的是没有发生在基本的应用程序编译上。不知道为什么 R8 用测试代码做任何事情。
  2. 这是 R8 问题还是 Play Services 问题?
  3. 我该如何解决这个问题。gradle clean + invalidate/restart 没有做任何事情,也没有手动删除和重新生成 mappings.txt 文件。
0 投票
1 回答
160 浏览

compilation - NoClassDefFoundError:生成apk时出错

将我的应用程序迁移到 android x 和 gradle 5 我发送生成 apk 或安装的那一刻给了我这个错误

引起:java.lang.NoClassDefFoundError: com/android/tools/r8/dex/ApplicationReader

构建.graddle

graddle.properties

引起:java.lang.NoClassDefFoundError: com/android/tools/r8/dex/ApplicationReader

0 投票
1 回答
1734 浏览

android - com.android.tools.r8.utils.AbortException: Error: program input - Unsupported source file type

After I upgraded my android project to androidX I get the following build error:

I have read, that this might be an issue that is fixed in Android-Studio 3.5 Beta as mentioned here But I have tried it with the newest beta version and I get the same error. Others said the same here. But I am not even sure if it is the same problem for me.

Anyone has an idea how to fix this?

0 投票
1 回答
2057 浏览

android - 如何去混淆 R8 堆栈跟踪?

我有一个应用程序,它就像每个好的应用程序一样崩溃!不久前,Android 构建工具开始使用R8而不是Proguard。它起作用了,它加快了我的构建速度,所以我不管它。然后出现了一个异常堆栈跟踪,我必须对其进行去混淆处理。我使用了 proguard UI、retrace.bat脚本和命令行,但本应去混淆的堆栈跟踪看起来仍然被混淆了。

查看mapping.txt生成的,我在映射中看到了一堆我不记得以前见过的数字(行号?)。我怀疑这些是最重要的反混淆器失败的原因。

目前有什么方法可以对此类堆栈跟踪进行去混淆处理?

也发布为https://issuetracker.google.com/137078989

0 投票
1 回答
1004 浏览

android - 如何让 R8 + proguard-android-optimize.txt + Google Drive API 无缝运行?

这是我们的 R8 版本

当前版本是:1.4.94(来自 go/r8bot (luci-r8-ci-archive-0-5g74) 的构建 390954928f0db9c3b888a367f7f128ce3bbfb160)。

当我从

我们收到以下错误。

崩溃发生在以下代码中


请注意,在我们从 切换proguard-android.txtproguard-android-optimize.txt.

proguard-android-optimize.txtR8似乎基于, 剥离了一些重要信息,导致调用 Google Drive API 失败。

任何人都如何proguard-android-optimize.txt使用 Google Drive API?


用 Proguard 替换 R8 怎么样?

如果我通过应用android.enableR8=false(仍在使用proguard-android-optimize.txt)使用 ProGuard,版本 6.0.3,则在运行 Google Drive API 相关代码时没有问题。


我的 Google Drive API 库

我完整的proguard文件