Я сделал приложение для iOS 8, которое использует новую функцию групп приложений для совместного использования хранилища Core Data с расширением. Это сработало так хорошо, что я подумал, что попробую его с двумя отдельными приложениями, совместно использующими хранилище Core Data в контейнере группы приложений. Но пока это работало между приложением и расширением, у меня возникают проблемы с повреждением хранилища основных данных при совместном использовании с двумя приложениями.
В зависимости от порядка, в котором я открываю 2 приложения, я получаю разные ошибки:
Выборки вызывают эту ошибку:
CoreData: error: (522) Ошибка ввода-вывода для базы данных в /private/var/mobile/Containers/Shared/AppGroup/[………………………………………………………………………………………………………………………………………………………………………………………… Код ошибки SQLite: 522, "не ошибка"
Сохранения вызывают эту ошибку:
CoreData: error: (11) Неустранимая ошибка. База данных в /private/var/mobile/Containers/Shared/AppGroup/[...ght.sqlite повреждена. Код ошибки SQLite: 11, "образ диска базы данных искажен"
Or:
Основные данные: ошибка: -executeRequest: обнаружено исключение = ошибка во время выполнения SQL: ПЕРВИЧНЫЙ КЛЮЧ должен быть уникальным с userInfo = {NSFilePath = "/private/var/mobile/Containers/Shared/AppGroup/[...ght.sqlite"; NSSQLiteErrorDomain = 19; } CoreData: ошибка: (19) ПЕРВИЧНЫЙ КЛЮЧ должен быть уникальным.