gpt4 book ai didi

android - 在 Android 发布版本中使用 Kotlin 反射 sealSubClasses 属性

转载 作者:行者123 更新时间:2023-12-02 13:01:00 27 4
gpt4 key购买 nike

当我尝试使用 sealedSubClasses Kotlin 中具体化类的属性,它只在我的调试中有效,在我的发布版本中无效。我想这是 ProGuard 的一个问题,但我不知道如何解决这个问题。我已经尝试将所有类保留在密封类所在的模块中,但我对此没有运气。 sealedSubClasses属性总是返回一个空列表。

最佳答案

找到了两种解决此问题的方法:

  • 将规则添加到您的 proguard-rules.pro 文件:

  • -keep class com.example.ClassName { *; }
    -keep class com.example.ClassName$* { *; }
  • 使用@Keep注解:

  • @保持
    密封类 ClassName{
    @保持
    对象A:类名()
    @保持
    对象 B:类名()
    }

    这个对我不起作用:
    -keep class kotlin.Metadata { *; }
    还有一个错误 https://issuetracker.google.com/issues/169264693这可能是你问题的一部分。

    关于android - 在 Android 发布版本中使用 Kotlin 反射 sealSubClasses 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59360430/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com