Core Data fetch无法在真实设备上运行 - Core Data Swift 3

时间:2016-12-05 18:19:22

标签: swift xcode core-data nsfetchrequest

该应用程序的工作原理如下: 捆绑包中有一个内置的持久性存储(当然是3个文件)。当应用程序启动时,它会将商店复制到核心数据目录中(仅限第一次)并开始获取它。

  1. 核心数据提取在模拟器上运行良好,但不会在插入计算机的实际设备上获取任何内容。以下是AppDelegate,CoreDataStack,ViewController提取的代码以及将商店复制到app目录的功能。

  2. 另外,我没有使用fetch distinct结果,只是我无法将不同的结果放入数组中。相反,我使用非常糟糕的方式取出所有并将它们放入一组。

  3. 第一个问题是需要立即解决的问题。任何建议和帮助都非常感谢!

    Fragment

1 个答案:

答案 0 :(得分:0)

经过几天的挣扎,这个问题就解决了。

OS和iOS文件系统有不同的要求:

操作系统文件名不区分大小写,而iOS文件名区分大小写。

此外,在加载持久性存储时,核心数据正在尝试查找与您的数据模型具有完全相同名称的存储文件。因此,如果您有相同的拼写但不同的案例文件名,您将无法在真实设备上获取任何内容,而在模拟器上则很好。

因此,如果您只有一个商店文件,建议始终使数据模型和存储文件具有完全相同的名称。