sos*_*ite 3 android delegates serializable gradle kotlin
minifyEnabled true在应用程序脚本中设置后,build.gradle我开始收到此异常:
Caused by: java.lang.RuntimeException: Parcelable encountered IOException writing serializable object (name = some.package.SomeClass)\n at android.os.Parcel.writeSerializable(Parcel.java:1767)\n \xe2\x80\xa6\nCaused by: java.io.NotSerializableException: kotlin.UNINITIALIZED_VALUE\nRun Code Online (Sandbox Code Playgroud)\n当我尝试转到class SomeClass : Parcelable另一个活动时发生崩溃。
我尝试将所有应用程序类别列入白名单,-keep class some.package.**.* { *; }但没有成功。
我偶然发现了同样的问题,当前的答案是错误的:添加@delegate:Transient惰性将使反序列化时的支持字段无效。
由于该问题仅在 时发生minifyEnabled = true,因此这是 Proguard/R8 问题。我通过将以下几行添加到我的中解决了这个问题proguard-rules.pro:
-keep class * implements kotlin.Lazy {
*;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
731 次 |
| 最近记录: |