2014-05-12 47 views
-1

我有一个android项目,我需要保存少量的数据。可以是每个1-20个条目的3个表格,也可以是2个内嵌嵌套字典的词典(不仅是主要数据类型),还是其他类似的东西。这些只是服务器的用户首选项和登录名。在android上保存小数据的最佳方法

我已经阅读了关于存储数据的选项,但我不知道哪一个最适合我的情况。我想使用共享偏好设置,但我不太确定我可以在那里存储我的嵌套信息。它工作吗?有更好的解决方案吗?

我的数据(例如):

  • Server登录:某些键,包括数据的关键。数据包含URL,用户,密码等。
  • 收藏夹:这些项目的不同信息,包括服务器密钥/数据。

数据很少会更新,所以我也可以冗余地存储一些信息,以避免连接表或从多个文件中读取数据。这些数据必须在会话中保留并安全存储,不可用于任何其他应用程序...

+1

我猜db是你最好的选择。 –

+0

不需要更多时间阅读它吗? – Antiohia

+1

有表格格式的数据,所以我建议数据库是最好的选择。 –

回答

1

我会建议使用sqlite数据库。这个存储空间在整个被杀的进程中都是存在的,并且只能从你的应用程序私人访问。看看here for a first introduction

SharedPreferences是desigend存储原始数据类型,所以你不能轻松存储嵌套字典。

Cite from the docs:

的SharedPreferences类提供了一个通用框架,允许 您保存和检索的基本数据类型 持续键值对。您可以使用SharedPreferences保存任何原始数据: 布尔值,浮点数,整数,长整数和字符串。这些数据将在整个用户会话中持续 (即使您的应用程序被终止)。

+0

我可以通过创建多个表/字典来避免嵌套字典。但是,在这种情况下,每次我需要阅读至少两本字典时,我必须阅读它。与表格一样,我总是需要一个连接。哪一种情况的开销较小(对于应用程序而言,不适用于开发)?如果我使用数据库,那么我想,我不能使用偏好活动,对吗? – Antiohia

+1

@Antiohia它不是如果你使用数据库,那么你不能使用sharedpreference。您可以使用共享首选项来存储临时存储的密钥值配对数据。 – GrIsHu

+0

我真的不认为我需要同时使用这两套数据。我只是试图找出哪一个更好,我需要存储的数据。 – Antiohia

相关问题