LibGson
1. 功能简介
基于Gson封装的Json数据结构类型安全的转换方法
2. 组件信息
引用仓库
引用仓库可以参考 组件使用 中添加依赖的部分
组件使用
implementation 'com.bihe0832.android:lib-gson:+'
3. 组件功能
3.1. JsonHelper
将Json结构,按照转换为指定的数据类型
将指定的数据结构转为Json
支持解析指定类型的Json列表
对于类型错误的数据格式自动兼容,例如 可以支持将 String 安全转换为基本数据类型(例如 "1" 转为 Int 类型的 1),转换底层使用 LibCommonUtils 提供的 ConvertUtils
对于特殊字段,支持不解析,直接返回String(Gson)添加
@JsonAdapter(RawStringJsonAdapter.class)
设置字段不解析。例如:对于Bollean,支持添加
@JsonAdapter(BooleanTypeAdapter.class)
设置解析。例如:对于额外的特殊字段,不通过gson解析返回,可以直接用
transient
关键字标注可以使用自定义的GsonBuilder解析
public class JsonTest {
private transient int ignoreKey;
@SerializedName(value = "key", alternate = {"index"})
private int key;
@SerializedName("value1")
@JsonAdapter(RawStringJsonAdapter.class)
private String data1 = "";
@SerializedName("value2")
@JsonAdapter(BooleanTypeAdapter.class)
private boolean data2 = false;
public int getKey(){
return key;
}
public void setKey(int key) {
this.key = key;
}
@Override
public String toString() {
return "JsonTest{" +
"key=" + key +
", data1='" + data1 + '\'' +
", data2=" + data2 +
'}';
}
}