我从 API 获取数据,然后将其转换为字符串,以便我可以使用我的 POJO 类(用户和令牌)将数据保存到 sharedPref 中。我能够使用 User 类的方法,但是每当我尝试访问 Token 类的方法时,应用程序就会崩溃。这是我得到的回复:{"username": "string","email": "string","firstName": "string","lastName": "string","avatarURL": "string","token": { "token": "string", "expiresOn": "2019-06-29T21:07:07.891Z"}}这是我的用户类:public class User {public User() {}@SerializedName("username")@Exposeprivate String username;@SerializedName("email")@Exposeprivate String email;@SerializedName("firstName")@Exposeprivate String firstName;@SerializedName("lastName")@Exposeprivate String lastName;@SerializedName("avatarURL")@Exposeprivate String avatarURL;@SerializedName("token")@Exposeprivate Token token;public String getUsername() { return username;}public void setUsername(String username) { this.username = username;}public String getEmail() { return email;}public void setEmail(String email) { this.email = email;}public String getFirstName() { return firstName;}public void setFirstName(String firstName) { this.firstName = firstName;}public String getLastName() { return lastName;}public void setLastName(String lastName) { this.lastName = lastName;}public String getAvatarURL() { return avatarURL;}public void setAvatarURL(String avatarURL) { this.avatarURL = avatarURL;}public Token getToken() { return token;}public void setToken(Token token) { this.token = token;}}
2 回答
qq_笑_17
TA贡献1818条经验 获得超7个赞
User user = g.fromJson(data, User.class);
// Try this to get the token of a particular user.
// I think this may be the cause of the error.
Token token = user.getToken();
String tokenNo = token.getToken();
天涯尽头无女友
TA贡献1831条经验 获得超9个赞
您正在尝试使用 2 个不同的对象来解析响应,但响应已被解析。如果您调试 User 对象,它内部已经包含了 Token 对象。这一行就足够了:
User user = g.fromJson(data, User.class);
发生崩溃是因为您试图将 User JSON 对象(您的data
对象)解析为 Token 对象。所以只需删除这一行:
Token token=g1.fromJson(data,Token.class);
添加回答
举报
0/150
提交
取消