Волшебная запись iOS и SQLCipher

Я использую Magical Record для сохранения своих данных. Эти данные нуждаются в шифровании, поэтому я пытаюсь объединить их с библиотекой SQLCipher (http://sqlcipher.net/ios-tutorial/). ).

Я уже настроил SQLCipher и успешно протестировал его с Core Data, используя файл EncryptedStore из этого примера https://github.com/project-imas/encrypted-core-data:

Что я сделал, так это только изменил NSPersistentStoreCoordinator следующим образом:

NSPersistentStoreCoordinator *coordinator = [EncryptedStore makeStore: [самостоятельно управляемая модель объекта]: [SSKeychain passwordForService: моя учетная запись службы: моя учетная запись]];

Поэтому я думаю, что мне нужно изменить способ создания NSPersistentStoreCoordinator в MagicalRecord, но мне с этим не повезло, поэтому любая помощь будет оценена по достоинству.


person Community    schedule 21.08.2013    source источник


Ответы (1)


Если у вас уже есть постоянный координатор хранилища, вам придется настроить основной стек данных вручную при использовании MagicalRecord. Я рекомендую что-то в этом роде:

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

Возможно, вам придется открыть метод инициализации самостоятельно.

В качестве примечания вы можете добавить билет в журнал проблем MagicalRecord, чтобы добавить метод в коллекцию методов установки, чтобы указать собственного координатора, чтобы эта работа выполнялась самой MagicalRecord.

person casademora    schedule 21.08.2013
comment
Я сам уже решил проблему. Я прошел шаг за шагом через Magical Record и изменил метод NSPersistentStoreCoordinator+MagicalRecord.m: температура]; // NSPersistentStoreCoordinator *psc = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:model]; Теперь SQLCipher работает с MagicalRecord - person ; 22.08.2013
comment
да, вы, вероятно, должны сделать это в общедоступном API. Если вам нравится поддерживать библиотеку с вашими пользовательскими изменениями, это круто. - person casademora; 22.08.2013
comment
@user1041311 user1041311 Не могли бы вы вместо этого добавить ответ с точной настройкой, которая вам подошла? - person Kiran; 10.04.2015