在我的Android应用程序中,我有大约100个位置(最多将是200个)。我想允许用户将每个地点标记为已访问并存储此选择。
因此,用户可以标记/取消标记他已访问某些地方/城市。
如果我将值存储为SharedPreference,这是一个好主意吗?
我的代码:
readFile()
下次当用户标记另一个地方时:
io.EOF
我问的是,由于存储的可能位置数量很多,在我的情况下最多可以存储200个。我通常使用这种存储只是为了存储一些设置,但我认为这也是一种简单的方法来存储我的情况下的值,我不想使用数据库或任何类似的存储。 / p>
答案 0 :(得分:3)
这是否是一个好主意取决于您的要求和期望。如果您存储这样的数据,它肯定会起作用,但是会有一些限制:
我认为在这种情况下你实际上 DO 想要使用数据库。它会得到回报。
答案 1 :(得分:1)
SharedPreferences是保存数据的关键/价值方式。我认为保存大量结构化数据是不合适的,因为您必须为每个值定义一个键。
对于您的情况,使用SQLite可能是更好的选择。
答案 2 :(得分:0)
您应该切换到更可靠的方式将数据存储在存储中,而不是使用SharedPreferences。
Sqlite是不错的选择,但如果您不想编写SQL Queries
并希望在您的存储中存储数据的解决方案,Realm
是一个惊人的选择。
虽然在实施之前请详细了解使用领域的优缺点。您可以在这里阅读有关Realm的更多信息: -