在桌面应用程序中,通常用于存储这样的应用程序配置
public class ApplicationConfiguration
{
public int speed;
public boolean soundEnabled;
public Map<Country, String> watchlistNames = new EnumMap<Country, String>(Country.class);
public List<BrokingFirm> brokingFirms = new ArrayList<BrokingFirm>();
}
我使用xstream将它存储在 XML 中,因为它们可以很好地处理List
,Map
等其他数据结构。即使对于自己的自定义类,如Country
, BrokingFirm
, ... xstream 也能很好地处理它们。大多数时候,我们不需要为自定义类提供显式的序列化代码,只要自定义类中没有花哨的数据结构即可。xstream 几乎为我们完成了所有艰苦的工作。
但是,当谈到 Android 时,我不确定是否有任何类似于 xstream 的好选择?Preferences似乎不能很好地处理集合类和自定义类?或者至少,需要相当多的自定义代码才能使其工作。