【问题标题】:Kotlin 1.6.0 breaks proguard?Kotlin 1.6.0 打破了proguard?
【发布时间】:2022-01-03 18:09:32
【问题描述】:

将我的 Android 应用从 Kotlin 1.5.21 更新到 Kotlin 1.6.0 后,我的 proguard 规则停止工作(即它们被忽略)。这导致一些反射代码在发布模式下中断。降级到 Kotlin 1.5.21 解决了这个问题。

Kotlin 1.6.0 和 proguard 是否存在任何已知问题?

google了一下,发现还有其他相关问题(见thisthisthis)。

【问题讨论】:

  • 你在你的项目中使用moshi吗?
  • 有错误信息吗?您可以使用较低的日志级别/在调试模式下运行 gradle 吗?这可能值得向 proguard 的维护者报告。
  • 我不使用 Moshi。没有任何错误消息。我对 Android 应用构建系统了解不多,但我会尝试实现一个最小的示例。

标签: android kotlin proguard


【解决方案1】:

问题在于与 Android Gradle 插件 (AGP) 捆绑在一起的 R8 版本。

按照this related answer 中的建议,我在我的gradle 配置文件中明确设置了com.android.tools:r8:3.0.77

dependencies {
    classpath("com.android.tools:r8:3.0.77")
    classpath 'com.android.tools.build:gradle:7.1.0'
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-09-16
    • 2020-06-14
    • 2019-09-17
    • 1970-01-01
    • 2017-09-06
    • 2016-05-31
    • 2019-01-24
    相关资源
    最近更新 更多