Proguard - 不要混淆Kotlin数据类
问题描述:
在我的项目中,我使用AutoValue作为我的旧模型类。我开始使用Kotlin,我想用Data Classes代替AutoValue。我想要在我的数据层中禁用所有数据类别的混淆,但要保留包中其他类的混淆。Proguard - 不要混淆Kotlin数据类
有没有办法做到这一点?
我会希望有这样的事情在我Proguard的文件:
-keepclassmembers data class example.data_layer.** { *; }
答
要解决这个问题,我感动的模型类模型包并增加了新ProGuard规则来进行包装。
-keep class com.company.myfeature.model.** { *; }
另一种解决方案是使用@Keep annotation从支持库禁用模糊的类:
@Keep
data class MyRequestBody(val value: String)
使用@Keep可能会导致问题,因为它很容易忘记将其添加为新的类。
希望在将来会有一个ProGuard的规则的方式来禁用模糊在包中的所有数据类,而不需要有一个子包为模型类。
我不想在所有'data class'es上模糊处理 –