2011-03-30 28 views
3

请原谅,如果这是一个非常新手的问题,但我有点困惑。我的应用程序中有一个设置屏幕,其中有复选框或单选按钮选项和微调器选项。用户必须选择一个,我的应用程序将使用保存的设置选项进行更新。现在我相信我可以对sqlite数据库做同样的事情,但看起来像首选项仅用于这种场景。使用首选项而不是sqlite数据库会有多好。我不知道我该走哪条路。什么我的应用程序设置屏幕使用首选项或sqlite数据库

请有人解释。 在此先感谢。

回答

0

SharedPreferences适用于非结构化数据。它很容易使用;与SQLiteDatabase你最终会写很多代码,而从来没有利用sqlite3的核心竞争力,如索引,排序和联接。

+0

“非结构化数据”好吧看到我有一些屏幕,有些没有给予用户选择的选项,用户必须进入,而用户必须从所提供的选项中选择一些屏幕。那么你的非结构化数据是什么意思?一个是用户输入和其他应用程序给他们的选项可供选择。你说选项一是非结构化的? – 2011-03-30 20:42:10

+1

“非结构化”意思是没有组织成行和列。如果你只想记住一些不需要组织的数据,那么'SharedPreferences'是一条很好的路径。 – 2011-03-30 20:46:28

+0

哦,好吧谢谢.. – 2011-03-30 20:49:03

3

与SharedPreferences一起去。这是一个轻量级的键/值存储,易于用于原始类型。

如果您有关系数据,SQLite数据库更有用,但它比您偏好设置更具礼貌性。您需要编写SQL查询来检索和更新变量,管理您的模式(例如,如果您决定添加新的首选项,请升级数据库),通过使用SqlDatabaseHelper打开和关闭数据库等来管理数据库。

In总之,一个SQLite数据库是很多你不需要的开销。

+0

是的我已经读过,它是轻量级的键/价值,但可以请你详细解释数据库方面的优点和缺点。非常感谢。编辑 – 2011-03-30 20:36:29

+0

以增加使用SQLite与偏好设置的一些缺点。 – 2011-03-30 20:48:25

+0

有用的数据谢谢..我想我可以投票只有一个答案,但两者都对我有用..谢谢反正 – 2011-03-30 20:51:16

相关问题