error: Parceler: no se puede encontrar el generador de lectura / escritura para el tipo io.realm.RealmList

Estoy progtwigndo un proyecto usando Kotlin:

  • Versión de Kotlin: 1.1.3-2
  • Parcerler versión 1.1.9
  • Realm versión 3.2.0

Estoy usando Parceler para FragmentArgs con RealmObjects y obtengo el siguiente locking.
Parceler: no se puede encontrar el generador de lectura / escritura para el tipo io.realm.RealmList

  1. Mi class Trabajo así:
@Parcel(value = Parcel.Serialization.BEAN, analyze = arrayOf(Job::class)) open class Job( @PrimaryKey open var tweetId: Long? = -1L, open var text: String = "", open var title: String = "", open var longitude: Double? = null, open var latitude: Double? = null, open var link: String = "", @ParcelPropertyConverter(RealmStringListParcelConverter::class) open var imageUrls: RealmList<RealmString>? = null ) : RealmObject() 
  1. La class RealmString se ve así: Mi class RealmString.kt así:
 @Parcel(value = Parcel.Serialization.BEAN, analyze = arrayOf(RealmString::class)) open class RealmString( open var value: String = "" ) : RealmObject() 
  1. La class RealmListParcelConverter se ve así:
 public class RealmListParcelConverter implements TypeRangeParcelConverter<RealmList<? extends RealmObject>, RealmList<? extends RealmObject>> { private static final int NULL = -1; @Override public void toParcel(RealmList<? extends RealmObject> input, Parcel parcel) { parcel.writeInt(input == null ? NULL : input.size()); if(input != null) { for(RealmObject item : input) { parcel.writeParcelable(Parcels.wrap(item), 0); } } } @Override public RealmList fromParcel(Parcel parcel) { int size = parcel.readInt(); RealmList list = new RealmList(); for(int i = 0; i < size; i++) { Parcelable plotble = parcel.readParcelable(getClass().getClassLoader()); list.add((RealmObject) Parcels.unwrap(plotble)); } return list; } } 

ACTUALIZAR

He intentado agregar implementaciones = RealmStringRealmProxy e implementaciones = JobRealmProxy, todavía tengo el mismo problema.

ACTUALIZACIÓN 2

Actualice la versión de Realm a 3.5.0 , todavía obtiene el mismo problema.

finalmente obtuve una solución para esta respuesta. Todo lo que necesitas es agregar setter en mi model Job . Daré todo mi código aquí:

  1. Mi class Trabajo así:
 @Parcel(value = Parcel.Serialization.BEAN, analyze = arrayOf(Job::class)) open class Job( @PrimaryKey open var tweetId: Long? = -1L, open var text: String = "", open var title: String = "", open var longitude: Double? = null, open var latitude: Double? = null, open var link: String = "", ) :RealmObject(){ @ParcelPropertyConverter(RealmStringListParcelConverter::class) open var imageUrls: RealmList<RealmString>? = null set} 
  1. La class RealmString se ve así: Mi class RealmString.kt así:
 @Parcel(value = Parcel.Serialization.BEAN, analyze = arrayOf(RealmString::class)) open class RealmString( open var value: String = "" ) : RealmObject() 
  1. La class RealmStringListParcelConverter se ve así:
  class RealmStringListParcelConverter : RealmListParcelConverter<RealmString>() { override fun itemToParcel(input: RealmString?, parcel: Parcel?) { parcel?.writeParcelable(Parcels.wrap(RealmString::class.java, input), 0) } override fun itemFromParcel(parcel: Parcel?): RealmString { return Parcels.unwrap(parcel?.readParcelable<Parcelable>(RealmString::class.java.classLoader)) } } 
  • Modo correcto de consulta de Android Kotlin Realm + devolución de elementos no administrados en Bg Thread
  • Cómo usar Realm en una biblioteca
  • La compilation falla al usar 'kotlin-kapt' con el reino
  • Agregar valor generado a un RealmObject
  • No se puede configurar el Reino en el proyecto usando Kotlin
  • Prueba de Android en kotlin de reino
  • la demostración del reino de Kotlin no se puede ejecutar
  • Cómo get Flowable <List <Foo >> del object 'Bar' con relaciones de uno a muchos 'Foo' usando el reino y Rxjava
  • La aplicación del complemento Realm en el proyecto Kotlin produce un error de compilation
  • Cómo consultar Realm en el background Subprocess usando RxJava2
  • Realm Turn Transaction en observable