android端只接收一个信息的,怎么调出来呀?

现在是接收到了一个值,然后存入数据库中哈。
但是,比如说 avatar ,这个用数据好像不行呢,通过实体类,get出来。
接收是接收到了返回的值,下面是图片哈

img

下面是报错的信息图上

img

msg.obj 多了个《上传结果:》


裁一下 msg.obj,在转之前做

msg.obj = msg.obj.substring(msg.obj.indexOf('{'), msg.obj.lastIndexOf('}'));

不是标准的json,不能泛型化转换
如果实在要泛型,那么应该截取msg.obj中的str = “{"msg":"hello", "code": 0, "avatar":"http://abc.bcd.efg.com"}”,这个是标准的json可以泛型化,

定义类
public class AvatarEntity implement Serializable{
private String msg;
private int code;
private String avatar;
}

AvatarEntity avatarEntity = new Gson().fromJson(str,AvatarEntity.class);

你msj.obj咋还带个“上传结果:”?

这不是json字符串了哦,红色框那串才是,需要再截取下冒号后面的数据

img


然后红色框那串的解析,像楼上说的那样:
public class AvatarEntity implement Serializable{
private String msg;
private int code;
private String avatar;
}
AvatarEntity avatarEntity = new Gson().fromJson(string,AvatarEntity.class);

JsonSyntaxException了啊,我看报错是你json有问题
1.你用这个网址检测一下你的json合规吗 https://www.bejson.com/json/format/
2.或者 你服务端客户端的json解析类不同,比如一个用gson,一个用阿里的json