Kotlin的@Parcelize在writeToParcel()上抛出NPE

我有这个数据类的集合,都在同一个文件中:

@Parcelize data class Response(val RecordView: RecordView):Parcelable @Parcelize data class RecordView(val Records: List):Parcelable @Parcelize data class Gid(val Value: String):Parcelable @Parcelize data class Features(val Fields: List, val FeatureName: String, val Title: String):Parcelable @Parcelize data class Fields(val Label: String, val Value: String, val FieldName: String, val Features: List):Parcelable @Parcelize data class Records(val Gid: Gid, val ImageIds: List, val Fields: List, val Features: List):Parcelable 

然后我发送Response对象作为下一个活动的意图:

 val record = intent?.getParcelableExtra(RECORD) 

但接下来的活动会引发这个问题:

 java.lang.NullPointerException: Attempt to invoke interface method 'int java.util.Collection.size()' on a null object reference at entities.Features.writeToParcel(Features.kt) at entities.Records.writeToParcel(Records.kt) at android.os.Parcel.writeParcelable(Parcel.java:1496) at android.os.Parcel.writeValue(Parcel.java:1402) at android.os.Parcel.writeArrayMapInternal(Parcel.java:724) at android.os.BaseBundle.writeToParcelInner(BaseBundle.java:1408) at android.os.Bundle.writeToParcel(Bundle.java:1157) at android.os.Parcel.writeBundle(Parcel.java:764) at android.content.Intent.writeToParcel(Intent.java:8687) at android.app.ActivityManagerProxy.startActivity(ActivityManagerNative.java:3082) at android.app.Instrumentation.execStartActivity(Instrumentation.java:1518) at android.app.Activity.startActivityForResult(Activity.java:4225) 

当我只是发送一个更基本的类(只是在参数中的字符串),使用相同的@Parcelize相同的@Parcelize

是的,我在我的gradle文件上打开了实验。

有任何想法吗? 谢谢