【发布时间】:2014-07-31 15:31:36
【问题描述】:
我很久以前就在市场上开发并发布了一个应用程序。现在一些用户在长时间持有应用程序时指出崩溃。现在我确定了崩溃的原因,即我正在使用一个具有静态变量和方法的类来存储数据(getter 和 setter)。现在我想用任何其他方式替换静态方式。从我的研究中我得到以下建议:
共享首选项:我必须存储 40 多个变量(字符串、int 和 json 数组和对象),所以我认为使用共享首选项不是一个好主意。
SQLite:有 40 多个字段,我不需要一次保留多个值。我正在从不同的活动中获取字段的值。我的意思是一个活动的名字,另一个活动的年龄等等所以我认为使用 SQLite 也不是一个好主意。
-
应用程序类:现在我正在考虑使用应用程序类来存储这些数据。长时间持有应用会丢失静态变量等数据吗?
- 现在我用应用程序类替换静态变量。请告诉我,应用程序数据在很长一段时间后也变为空?
它可能对某人有用。
即使我的问题没有得到解决方案,我也知道为什么我们不应该使用应用程序对象来保存数据。请查看以下链接
【问题讨论】:
-
So I think using shared preferences is not a good idea.为什么?? -
这么多反对票,请给我一个答案。如果您认为这是不符合标准的问题,那么我准备好在我得到解决方案后删除。
-
SharedPreferences是最适合您的解决方案。我不知道你为什么认为它是not a good idea..!! -
+1 我在另一个开发人员启动并正在维护的应用程序中遇到类似问题。
-
@Aniruddha..我必须存储 40 多个字段,并且一些值是 jsonArray 和 JsonObjects...是否可以将这些值存储在 SharedPreference 中?