的錯誤我遇到了SQLCipher數據庫加密和CoreData問題: 當我將持久性存儲協調程序與SQLCipher配合使用時,它總是在第一個應用程序之後出現故障一對多關係重新啓動。 因此,當我第一次啓動應用程序時,我創建了具有關係的NSManagedObjects,然後,當我保存數據庫並重新打開該應用程序時,當我嘗試訪問這些關係時崩潰。 沒有SQLCipher一切工作正常。SQLCipher和CoreData問題:CoreData無法履行
這裏是SQLCipher持久性存儲初始化代碼:
- (NSPersistentStoreCoordinator *)persistentStoreCoordinator
{
if (!_persistentStoreCoordinator) {
NSURL *storeURL = [[self applicationDocumentsDirectory] URLByAppendingPathComponent:@"MyApp.sqlite"];
NSDictionary *options = @{EncryptedStorePassphraseKey: @"MyApp",
EncryptedStoreDatabaseLocation: storeURL};
NSError *error;
_persistentStoreCoordinator = [EncryptedStore makeStoreWithOptions:options managedObjectModel:[self managedObjectModel] error:&error];
if (error) {
NSLog(@"%@", error);
}
}
return _persistentStoreCoordinator;
}
代碼,我創建NSManagedObject:
- (id)createObjectWithClassName:(NSString *)name
{
NSManagedObject *object = [[NSClassFromString(name) alloc] initWithEntity:[NSEntityDescription entityForName:name inManagedObjectContext:self.context] insertIntoManagedObjectContext:self.context];
return object;
}
創建託管對象的代碼是什麼樣的? – 2014-12-05 17:43:05
@TomHarrington我使用NSManagedObject創建代碼更新了帖子 – 2014-12-05 22:45:49
有用的鏈接:https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/CoreData/Articles/cdTroubleshooting.html – Bhushan 2014-12-17 06:58:21