【问题标题】:AutoValue with GsonTypeAdapter in Kotlin在 Kotlin 中使用 GsonTypeAdapter 的 AutoValue
【发布时间】:2017-11-07 13:35:31
【问题描述】:

我正在尝试将 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())

有什么建议可以解决这个问题或改用什么?

【问题讨论】:

    标签: android kotlin gson


    【解决方案1】:

    只是不要使用它。如果是改造,你可以只使用 .addConverterFactory(GsonConverterFactory.create()) 和 kotlin 数据类。在你的情况下,你需要删除 MediaObject java 类,并创建数据类:

    data class MediaObject(
        @SerializedName("mimetype")
        val mimetypeString:String,
    
        @SerializedName("url")
        val uri:String)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-05-31
      • 1970-01-01
      • 2016-03-04
      • 2021-03-30
      • 2017-10-08
      • 1970-01-01
      • 2017-10-18
      • 2018-03-07
      相关资源
      最近更新 更多