Метод Realm realmWithPath в основном пакете дает сбой на iOS

Я не использую файл *.realm в каталоге документов приложения. Я использую его в основном каталоге пакета.

Когда я называю это:

NSString *path = [[NSBundle mainBundle] pathForResource:@"example" ofType:@"realm"];
RLMRealm *realm  = [RLMRealm realmWithPath:path];

Вылетает и пишет:

Завершение работы приложения из-за неперехваченного исключения «RLMException», причина: «Ошибка open(): операция не разрешена»


person krazyeom    schedule 11.10.2014    source источник


Ответы (1)


Файл Realm должен находиться в каталоге, к которому у вас есть доступ для записи, если вы хотите иметь возможность обновлять какие-либо данные. Если вы собираетесь распространять только предустановленную базу данных с вашим приложением и получать к ней доступ только для чтения, вы должны открыть ее только для чтения с помощью [RLMRealm realmWithPath:readOnly:error:].

person bmunk    schedule 12.10.2014
comment
Этот ответ правильный. Дополнительная информация в документации Realm: realm.io/docs/cocoa/latest/#other- миры - person jpsim; 14.10.2014