android – 改装2的自定义转换器

我必须处理一个动态的 JSON响应.

之前,我正在使用类和注释如下:

public class ChatResponse {

    @Serializedname("status")
    private int status;

    @Serializedname("error")
    private String error;

    @Serializedname("response")
    private Talk response;

    public int getStatus() {
        return status;
    }

    public String getError() {
        return error;
    }

    public Talk getResponse() {
        return response;
    }
}

当状态为1(成功)时,onResponse被触发,我可以获取一个ChatResponse对象.但是,当状态为0时,JSON表示中的响应为false,并且它失败(onFailure被触发).

我想创建我的自定义转换器,而this question一个很好的例子,但是这个例子就是Retrofit 1.

I have to创建一个扩展Converter.Factory的类,但是我不知道如何覆盖这个类的方法.

其实我有一个

@Override
public Converter<ResponseBody,?> fromresponseBody(Type type,Annotation[] annotations) {

    return super.fromresponseBody(type,annotations);
}

@Override
public Converter<?,RequestBody> toRequestBody(Type type,Annotation[] annotations) {

    return super.toRequestBody(type,annotations);
}

此时我如何解析JSON响应?

提前致谢.

解决方法

我正在寻找一个简单的例子,说明如何为Retrofit 2实现自定义转换器,并且没有发现任何好处( there is an example,但至少对我来说,这对我的purpouse来说太复杂了).

但是最后我找到了一个解决方案.该解决方案是使用GSON解串器.所以我们不需要一个自定义的转换器,我们只需要定制GSON转换器.

这是一个很棒的tutorial.这里是我的代码解析在我的问题中描述的JSON:

> Login Deserializer:定义如何将JSON解析为目标类的对象(使用条件和任何我们需要的).
> Custom GSON converter:构建使用我们自定义解串器的GSON转换器

相关文章

这篇“android轻量级无侵入式管理数据库自动升级组件怎么实现...
今天小编给大家分享一下Android实现自定义圆形进度条的常用方...
这篇文章主要讲解了“Android如何解决字符对齐问题”,文中的...
这篇文章主要介绍“Android岛屿数量算法怎么使用”的相关知识...
本篇内容主要讲解“Android如何开发MQTT协议的模型及通信”,...
本文小编为大家详细介绍“Android数据压缩的方法是什么”,内...