我曾尝试在另一个项目中执行此操作,根据我看过的教程,我知道我走在正确的轨道上,但我无法正确解析:
(非常简化)JSON 输出:
{
"data":{
"info":{
"username": "something"
"email" : "something"
}
..
..
}
我正在尝试使用以下类获取“用户名”和“电子邮件:
class ProfileResponse {
static Data data;
public static Data getData() {
return data;
}
public static void setData(Data data) {
ProfileResponse.data = data;
}
}
Class Data {
@SerializedName("info")
static Info info;
public static Info getInfo() {
return info;
}
public static void setInfo(Info info) {
Data.info = info;
}
}
class Info {
@SerializedName("username")
static String username;
@SerializedName("email")
static String email;
public static String getUsername() {
return username;
}
public static String getEmail() {
return email;
}
}
和反序列化 JSON 字符串(它是一个字符串可能是个问题吗?),如下所示:
Gson gson = new Gson();
gson.fromJson(response, ProfileResponse.class);
if (Info.getUsername() == null
|| Info.getUsername().isEmpty()) {
System.out.println("NO USERNAME");
} else {
System.out.println("USERNAME: "
+ Info.getUsername());
}
每次运行时都会打印“NO USERNAME”。