我正在为我的应用构建共享扩展,这意味着从共享目录初始化Core Data数据库:
let directory = FileManager.default.containerURL(forSecurityApplicationGroupIdentifier: applicationGroupIdentifier)!
let storeURL = directory.appendingPathComponent("database")
MagicalRecord.setupCoreDataStackWithAutoMigratingSqliteStore(at: storeURL)
运行常规应用,这一切都按预期工作。但随后运行Share Extension,它会在第一次获取请求时遇到异常:
return DataUser.mr_findAll(with: predicate, in: context) as! [DataUser]
错误:
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'executeFetchRequest:error: A fetch request must have an entity.'
我不确定是什么导致这种情况 - 正如我所提到的,它在运行异常时运行的代码与常规应用程序相同。