Reputation: 4314
I am getting this error while trying to read the bundle from another fragment where I am sending the NewVehicle object.
Error : Class 'NewVehicle' is not abstract and does not implement abstract member public abstract fun describeContents(): Int defined in android.os.Parcelable
NewVehicle.kt
import android.os.Parcelable
import com.google.gson.annotations.SerializedName
import kotlinx.android.parcel.Parcelize
@Parcelize
data class NewVehicle(
@SerializedName("av_se")
val avSe: String,
.....
@SerializedName("vh_ob")
val vhOb: String,
@SerializedName("zo_in")
val zoIn: String
):Parcelable{}
Upvotes: 8
Views: 8303
Reputation: 1015
In my case just apply these plugins in this order:
Make sure that you call kotlin-parcelize
first then kotlin-kapt
plugins {
id 'kotlin-parcelize'
id 'kotlin-kapt'
}
Upvotes: 8
Reputation: 182
In my case I forgot to add apply plugin: 'kotlin-parcelize'
in gradle
Upvotes: 18
Reputation: 4314
I got it resolved by adding this in my build.gradle(app) inside the android block.
androidExtensions {
experimental = true
}
Upvotes: 3
Reputation: 2496
Please remove {} after Parcelable.
@Parcelize
data class NewVehicle(
@SerializedName("av_se")
val avSe: String,
.....
@SerializedName("vh_ob")
val vhOb: String,
@SerializedName("zo_in")
val zoIn: String
): Parcelable
Upvotes: -7