我应该在iOS应用程序的哪里存储默认字符串列表?

时间:2018-06-20 15:02:09

标签: ios swift core-data nsuserdefaults plist

我有一个存储字符串列表的应用程序。

我目前有一个用于列表和用户的CoreData实体;用户与许多列表有关系。用户可以创建更多列表。

但是我想包括一些默认列表。这些默认列表应该存储在哪里?

想到的选项是:

  1. 用一些列表预填充CoreData
  2. 将默认列表存储在UserDefaults中
  3. 将默认列表存储在plist文件中
  4. 用代码在需要的地方明确创建默认列表

为iOS应用存储默认字符串数组的最佳方法是什么?

1 个答案:

答案 0 :(得分:1)

IMO没有一个答案,这真的取决于您的用例。

通常,如果您的用户将与默认列表进行任何交互(操作,隐藏,删除),我会将其放入您的CoreData中。

我假设由于您拥有该用户的实体,因此您允许多个不同的用户在同一设备上使用该应用程序吗?因此,如果将它们存储在userDefaults中,则还必须保持跟踪每个用户的修改。通常,userDefaults仅应用于“小”数据,请参见。 doc

  

默认系统允许应用自定义其行为以匹配   用户的首选项。例如,您可以允许用户指定他们的   首选的度量单位或媒体播放速度。