Возможно ли получить доступ к RealmSwift DB приложения из его Share Extension? - PullRequest
0 голосов
/ 16 января 2019

Я пытаюсь разработать приложение, которое сохраняет объект "Bus" в Realm, и у каждой шины есть свое имя, plateNm и т. Д. Я сейчас использую RealmSwift.

Мой вопрос:

Можно ли получить доступ к данным приложения в расширении общего ресурса?

Я хочу, чтобы пользователи могли обмениваться объектами Bus. Я понял, что могу изменить данные своей области на json, а json на realm.

Но, как мне получить доступ к БД приложения?

Я думаю, что импорт и экспорт данных Realm как json возможен. Как я могу обновить свою БД, когда получу файл json?

Я искал об этом и увидел несколько предложений о том, чтобы использовать общий контейнер между группами приложений.

Не могли бы вы дать мне знать, как сохранить данные области в общем контейнере? или есть какой-либо другой способ доступа к БД в Share Extension?

1 Ответ

0 голосов
/ 16 января 2019

Что вам нужно сделать, это поместить код доступа к БД области в общую инфраструктуру, к которой вы можете получить доступ из расширения, не забудьте объявить ваш контейнер следующим образом:

let container = NSFileManager.defaultManager().containerURLForSecurityApplicationGroupIdentifier("group.com.a.b")

но вы должны синхронизировать вашу БД из расширения, это известная ошибка: https://github.com/realm/realm-cocoa/issues/4490

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...