Java Gson反序列化引发强制转换错误
我正在尝试使用Gson库来反序列化Json对象,一切都很好,但是这个数据类型和类给了我错误 E/AndroidRuntime11573:java.lang.ClassCastException:java.util.ArrayList无法强制转换为frameWork.DataManager.Token 示例Json:Java Gson反序列化引发强制转换错误,java,android,json,serialization,gson,Java,Android,Json,Serialization,Gson,我正在尝试使用Gson库来反序列化Json对象,一切都很好,但是这个数据类型和类给了我错误 E/AndroidRuntime11573:java.lang.ClassCastException:java.util.ArrayList无法强制转换为frameWork.DataManager.Token 示例Json: [{"ID":-1,"Token":"APA91bFQdK7qVJheMBsulWBYYVAan5AwLyMT5cL_BYaoDXxlDGoxabZ0XRnn6osNtmA1KvDO
[{"ID":-1,"Token":"APA91bFQdK7qVJheMBsulWBYYVAan5AwLyMT5cL_BYaoDXxlDGoxabZ0XRnn6osNtmA1KvDOFb3mHkFDpXJ_zxshFSLY0cbt0dMmSZFDCXkDKfha2M_TRMwyB86c38do5Ngje_AOHfasfasfasfafasfascascrvfbdfbdfbfsfafasfasfasfaok","OS":"Android","Application":"Merchant"}]
类对象
public class Token {
public int ID;
public String Token;
public String OS;
public String Application;
}
实际代码,其中结果是Json字符串
Gson gson = new Gson();
this.mainScreenActivity.dataStorageManager.deviceToken = gson.fromJson(
result, new TypeToken<List<Token>>() {
}.getType());
想法?您正在使用
new TypeToken<List<Token>>
不是
Token
哪个
this.mainScreenActivity.dataStorageManager.deviceToken
似乎是
this.mainScreenActivity.dataStorageManager.deviceToken