我在安卓版本中保存/加載ArrayList<HashMap<String, Object>>
時出現問題。我一直在Google和SO上搜索解決方案几天,我嘗試過的一切都無法工作。在不同的Android版本中保存/加載ArrayList
這是我得到的錯誤:
java.io.InvalidClassException: org.apache.harmony.luni.internal.util.ZoneInfo; 不兼容的類(SUID): org.apache.harmony.luni.internal.util.ZoneInfo: static final long serialVersionUID = -8334108180457627365L;但預期org.apache.harmony.luni.internal.util.ZoneInfo: static final long serialVersionUID = 2415005675580187790L;
我試過implement Serializable
和static final long serialVersionUID = 1L
含有的ObjectInputStream和ObjectOutputStream的類,但誤差不會改變。進一步的測試表明,這個錯誤甚至在兩個不同的應用程序遇到同樣的問題時也不會改變,而且錯誤中的SUID完全取決於該文件已保存或試圖加載的Android版本。
我也嘗試Parcelable沒有成功。
如何在不存在此問題的情況下保存並加載ArrayList?
這裏是SUID的對ROM的我已經試過:
G1 1.6(CSDI V4 POR超級@ tmel):-1970599206206877388L
Droid的2.2(CyanogenMod的6.1.2):-8334108180457627365L
Droid的2.3(CyanogenMod的7每晚12):2415005675580187790L
它可以工作,但對於已有的具有這些數據類型的序列化數據,它仍然是一個問題。 – 2017-10-15 15:45:57