#iphone #core-data #core-data-migration #targets
#iPhone #core-data #core-data-миграция #цели
Вопрос:
У меня есть проект xcode, в котором есть 4 цели (2 приложения, 1 версия для iPhone и 1 версия для iPad для каждого). Недавно я внедрил облегченную миграцию Core Data.
В настоящее время я тестирую только два приложения, версии для iPhone, называю их App A и App B. Я могу запустить текущую версию app Store App A на своем iPhone, а затем установить новую версию приложения A, чтобы протестировать облегченную миграцию. Все работает нормально, никаких проблем.
Затем я пробую то же самое с приложением B. Я могу без проблем установить текущую версию App Store App B на свой iPhone. НО, когда я пытаюсь установить новую версию приложения B на свой iPhone, я КАЖДЫЙ раз получаю следующую ошибку (или ее вариант): «putpkt: ошибка записи, сломанный канал»
Я в замешательстве, поскольку две текущие версии находятся в одном проекте и имеют одинаковые настройки для каждой конфигурации (debug, release, distribution). Это не специальное распределение.
Каждое сообщение, которое я прочитал об этой ошибке на этом форуме и где угодно, предлагает такие вещи, как удаление приложения, перезагрузка устройства, перезапуск xcode и т. Д. И, конечно, я могу заставить его работать таким образом. НО я не могу таким образом протестировать свою миграцию.. Если я удалю старую версию приложения с устройства, ничего не будет перенесено!
Я вырываю волосы из-за этого. Изначально два приложения были в двух разных проектах, и я добавил приложение B в проект App A в качестве новой цели — это единственное, о чем я могу думать, поскольку я чувствую, что просмотрел все. Я был бы очень признателен за помощь в решении этой проблемы. Я чувствую себя плохо из-за отправки обновления базы данных, которое я не могу протестировать — я не могу рисковать повреждением данных людей, особенно когда я не предложил вариант резервного копирования до этой текущей версии. Тьфу.
РЕДАКТИРОВАТЬ: когда я пытаюсь запустить приложение B на устройстве без обновления, я часто получаю следующую ошибку: ошибка запуска исполняемого файла… Не знаю, как запустить. Попробуйте «цель справки».
РЕДАКТИРОВАТЬ: я думаю, что у меня возникла эта проблема, потому что я переименовал название продукта для приложения B. Я думаю, что это изменило пакет и не позволит мне перенести данные. Я постараюсь изменить его обратно и опубликовать обновление. Похоже, что в то же время пакеты слияния хорошо работают для приложения A.
Ответ №1:
Убедившись, что новый проект и исходный проект имеют одинаковое название продукта и одинаковое имя модели данных, я решил эту проблему для меня.