2

以下行无法保存任何数据,尽管 library/Application Support/Appname/Appname.sqlite 中有一个 sqlite 文件,其中包含模型中设置的标头信息。

 [MagicalRecord setupCoreDataStackWithiCloudContainer:@"128DBLAH422.com.company.appname.ubiquitycoredata" localStoreNamed:@"Appname.sqlite"];
  • iCloud 也被启动,因为 kMagicalRecordPSCDidCompleteiCloudSetupNotification 通知被触发。
  • 我在下一次运行时丢失了所有数据,尽管我能够在整个运行时正确保存(主线程上的“完成保存”)并且所有(据我所见)数据都在内存中可用。

以下使用同一目录路径中的 sqlite 文件正确保存和持久化:

 [MagicalRecord setupCoreDataStackWithAutoMigratingSqliteStoreNamed:@"Appname.sqlite"];
  • 我想知道为什么启用 iCloud 时我会在“库/应用程序支持/应用程序名/”中看到数据库。那是对的吗?

在一个带 5.0.1 的设备上,我在第一次运行后运行时收到以下错误:

 Error: Can't resolve how to assign objects to stores; Coordinator does not have any stores

在 iPad 和模拟器上,没有错误,但也没有数据。

另外...在使用 icloud 设置核心数据首次运行后(第一行完成启动):

  [MagicalRecord setupCoreDataStackWithiCloudContainer:@"128DBLAH422.com.company.appname.ubiquitycoredata" localStoreNamed:@"Appname.sqlite"];

任何未来运行使用

  [MagicalRecord setupCoreDataStackWithAutoMigratingSqliteStoreNamed:@"Appname.sqlite"];

而不是 icloud setup 将恢复下次运行时不会出现的数据。如果我在第一次使用 icloud 运行时添加数据,使用 icloud 重新运行并且不添加数据,然后在没有 icloud 的情况下运行,数据就在那里。

  • 是否有一种在后续运行中加载商店的方法与第一次创建商店时不同?
4

0 回答 0