我从 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
	提交
		取消
	