Невозможно получить доступ к файлу данных ядра

У меня есть приложение, которое полностью основано на Objective C, которая использует основные данные. Я переписал полное приложение на swift и теперь использую Relam для приложения swift. когда пользователи переходят с Objective C на быстрое приложение, я хочу перенести часть БД из основных данных в Realm. Но я не могу получить доступ к файлу данных Core.

Оба приложения имеют одинаковые идентификаторы комплекта.

Objective C version:
    NSURL *modelURL = [[NSBundle mainBundle] URLForResource:@"StoreName" withExtension:@"momd"];

Swift Version:
    let url = Bundle.main.url(forResource: "StoreName", withExtension: "momd")

1 ответ

Если вы используете IOS 10 выше, следуйте нижеприведенному appoarach

  lazy var persistentContainer: NSPersistentContainer = {
                 let container = NSPersistentContainer(name: "StoreName")
            container.loadPersistentStores(completionHandler: { (storeDescription, error) in
                      })
            return container
        }()

Используйте метод ниже для получения контекста

  func context() -> NSManagedObjectContext {
        if #available(iOS 10.0, *) {
            return persistentContainer.viewContext
        } else {
            // Fallback on earlier versions
            return managedObjectContext
        }
    }
Другие вопросы по тегам