在Android中使用应用程序类存储持久数据

在Android中使用应用程序类存储持久数据,android,Android,我发现自己经常使用应用程序类来持久化用户数据。这些都是应用程序范围的资源,尽管我有时会存储一两个整数来作弊。这样做有什么缺点吗?我找不到任何文件对此处可存储的数据量进行限制。嗯,文件上说: 通常不需要子类化 应用在大多数情况下,静态 单身人士也可以提供同样的服务 以更模块化的方式实现功能 此外,您在其中放入的内容将进入堆(*),该堆受大小限制(例如,限制为24MB)。若你们想存储更多的数据,你们应该把它放在数据库或文件系统中 *)从技术上讲,Android的Dalvik vm可能没有堆,但有其他

我发现自己经常使用应用程序类来持久化用户数据。这些都是应用程序范围的资源,尽管我有时会存储一两个整数来作弊。这样做有什么缺点吗?我找不到任何文件对此处可存储的数据量进行限制。

嗯,文件上说:

通常不需要子类化 应用在大多数情况下,静态 单身人士也可以提供同样的服务 以更模块化的方式实现功能

此外,您在其中放入的内容将进入堆(*),该堆受大小限制(例如,限制为24MB)。若你们想存储更多的数据,你们应该把它放在数据库或文件系统中


*)从技术上讲,Android的Dalvik vm可能没有堆,但有其他方法可以在主内存中存储内容。

回答得好,静态单例也是一种很好的方法。不过,我个人更喜欢应用程序对象,因为它有一个定义良好的生命周期。使用它确实没有什么特别的错误,没有缺点,只是保持数据量合理(这适用于需要在组件之间轻松共享的非持久性内容——对于使用意图的小数据,对于使用文件系统或数据库的大持久性数据)。