【发布时间】:2011-09-26 19:28:38
【问题描述】:
我正在开发一个问答游戏,我想保存进度...实际上我使用sharedsettings,简单快捷,但用户可以删除程序文件并丢失进度。数据库也是如此。我应该使用文件吗?我感兴趣的只是为每个问题保存一个布尔值:“正确回答与否?”
谢谢!!
【问题讨论】:
我正在开发一个问答游戏,我想保存进度...实际上我使用sharedsettings,简单快捷,但用户可以删除程序文件并丢失进度。数据库也是如此。我应该使用文件吗?我感兴趣的只是为每个问题保存一个布尔值:“正确回答与否?”
谢谢!!
【问题讨论】:
共享设置。你已经在使用它了。将用户从他/她自己手中拯救出来是非常困难的。如果它在设备上,那么它可以被愚蠢或恶意地破坏。并且不要忘记一切都是一个文件,您可以在设备上放置任何可以防止黑客/白痴的东西。
解决此问题的唯一方法是通过 Web 服务(和备份数据库)之类的方式将用户设置存储在设备之外。但我想说,如果您使用的是 SharedSettings...,您就可以了。就这样吧。如果您希望跟踪的问题数量增长到非常大并且希望对数据进行更多控制,我只会考虑使用特定于应用程序的数据库。
【讨论】:
代码逻辑在哪里?
一般来说,最好将所有 UI 首选项保存在 onPause 中。 Android 设计希望您永远不要有“保存”按钮,而是不断保存。
就每个问题而言,我猜你会在回答每个问题后保存?
【讨论】:
when,而是where。 where 考虑是 safer 持久性之一。