我正在使用GSON来序列化我的本地存储信息。随着我开发功能,一切都很顺利。
然而,就在我发布正式版本(导出APK的发布版本)之前,应用程序因某些类强制转换异常而崩溃。
我的本地信息声明为:
private class SavedInfo {
public int appVersion; //Used for future update
public int fileVersion;
public ArrayList<Long> savedIDs;
public SavedInfo() {
savedIDs = new ArrayList<Long>();
}
}
我发现它崩溃了,因为GSON会反序列化我保存的json字符串
{"savedIDs":[646,710],"fileVersion":2,"appVersion":220}
到内存中的ArrayList,因为一旦我调用long id = savedIDs.get(index)我就会得到&#34;无法转换为Double to Long&#34;异常。
我的问题是:
顺便说一句,我也禁用了这个类的保护选项。