gpt4 book ai didi

java - 如何在retrofit 2.0中自定义gson转换器?

转载 作者:行者123 更新时间:2023-12-01 10:32:59 25 4
gpt4 key购买 nike

我将在 gson 转换器中初始化对象。

在retrofit 1.9中,我这样重写GsonConverter:

public class MyGsonConverter extends GsonConverter {
@Override
public Object fromBody(TypedInput body, Type type) throws ConversionException {
Object obj = super.fromBody(body, type);
if (obj instanceof User) {
((User)obj).init();
}
return obj;
}
}

RestAdapter setConverter(new MyGsonConverter(gson))

现在在Retrofit 2.0中,不再有GsonConverter,而是改为Converter.Factory。它无法在方法中返回对象。

如何在 Retrofit 2.0 的转换器中初始化我的对象?

最佳答案

子类化ConverterFactory而不是Converter,并根据retrofit-converter中的现有类为其提供自定义的GsonResponseBodyConverter。

可能会有相关文档:

https://github.com/square/retrofit/issues/1305

同时,您可以像使用转换器一样修改这些类:

https://github.com/square/retrofit/tree/master/retrofit-converters/gson/src/main/java/retrofit2/converter/gson

如果您可以使用 Converter 来完成此操作,那么使用 Factory 就不那么难了。

关于java - 如何在retrofit 2.0中自定义gson转换器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34988763/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com