NSPersistentStoreCoordinator

NSPersistentStoreCoordinator

我正在使用Magical Record保存数据。此数据需要加密,因此我试图将其与SQLCipher库(http://sqlcipher.net/ios-tutorial/)组合在一起。

我已经使用以下示例https://github.com/project-imas/encrypted-core-data中的EncryptedStore文件设置了SQLCipher并成功地使用Core Data对其进行了测试:

我所做的只是像这样更改了NSPersistentStoreCoordinator:

NSPersistentStoreCoordinator * coordinator = [EncryptedStore makeStore:[selfmanagedObjectModel]:[SSKeychain passwordForService:myservice account:myaccount]];

因此,我认为我需要更改在MagicalRecord中创建NSPersistentStoreCoordinator的方式,但是我没有运气,因此能提供任何帮助。

最佳答案

如果您已经有一个持久性存储协调器,则在使用MagicalRecord时必须手动设置核心数据堆栈。我建议遵循以下原则:

 NSPersistentStoreCoordinator *coordinator = //how ever you do it;
 [NSPersistentStoreCoordinator MR_setDefaultCoordinator:coordinator];
 [NSManagedObjectContext MR_initializeDefaultContextWithCoordinator:coordinator];

您可能需要自己公开initialize方法。

附带说明,您可能希望向MagicalRecord问题日志添加票证,以将方法添加到setup方法集合中以指定您自己的协调器,以便MagicalRecord自己来完成这项工作。

09-26 21:23