我正在尝试将 Kotlin
集成到现有的 android Java 项目中。在构建中进行更改并将 Kotlin
添加到项目后,我找不到具有 AutoValue
的 GsonTypeAdapter
类的解决方案,似乎不支持此功能。
@AutoValue
public abstract class MediaObject implements Parcelable {
public static TypeAdapter<MediaObject> typeAdapter(Gson gson) {
return new AutoValue_MediaObject.GsonTypeAdapter(gson);
}
@SerializedName("mimetype")
public abstract String getMimeType();
@SerializedName("url")
public abstract String getUri();
}
My Gson builder:
GsonBuilder().registerTypeAdapterFactory(new AutoValueGsonTypeAdapterFactory())
有什么建议如何解决这个问题或改用什么?
最佳答案
只是不要使用它。如果是用于改造,你可以只使用 .addConverterFactory(GsonConverterFactory.create()) 和 kotlin 数据类。在你的情况下,你需要删除 MediaObject java 类,并创建数据类:
data class MediaObject(
@SerializedName("mimetype")
val mimetypeString:String,
@SerializedName("url")
val uri:String)
关于android - Kotlin 中带有 GsonTypeAdapter 的 AutoValue,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47159328/