Идентификатор пакета изменен Основные данные потеряны

Я изменил проект с Objective-C на Swift и создал совершенно новый проект, когда сделал это. У меня есть приложение в AppStore, и я хотел отправить обновление, а не выпускать новое приложение.

Я понимаю, что мой Bundle Identifier должен быть таким же при обновлении приложения. При подготовке приложения к выпуску я изменил свой идентификатор пакета, чтобы он соответствовал моему приложению в AppStore — поскольку я начал с нового проекта — и в процессе этого мой файл основных данных, похоже, отсутствует. Если я изменю свой идентификатор пакета, как мне сохранить доступ к основным данным?


person jonthornham    schedule 14.06.2015    source источник


Ответы (1)


Мне потребовалось некоторое время, чтобы понять, но вот как я решил проблему.

  1. Измените название продукта в разделе «Параметры сборки» -> «Упаковка» -> «Название продукта» на желаемое название продукта. Это изменит ваш Bundle Identifier на желаемое имя.

введите здесь описание изображения

введите здесь описание изображения

  1. Очистите свой проект, выбрав Продукт -> Очистить.

  2. Выберите модель CoreData в навигаторе проекта, а затем выберите инспектор модели данных на вкладке «Инспектор». Измените имя проекта под классом на новое имя класса. Я застрял здесь, так как не знал пробелов, тире, . все заменены символами подчеркивания. Вы можете видеть, что название моего продукта — FLO-Cycling, а класс CoreData — FLO_Cycling.

введите здесь описание изображения

введите здесь описание изображения

  1. Если вы импортировали заголовочный файл моста Swift где-либо, обязательно обновите его.

введите здесь описание изображения

Я надеюсь, что это может помочь кому-то.

Заботиться,

Джон

person jonthornham    schedule 17.06.2015
comment
Не работает для меня. Кроме того, Xcode продолжает удалять точку в имени класса. - person moonman239; 28.09.2016
comment
Вы должны использовать подчеркивание, чтобы заменить точку. - person jonthornham; 18.03.2017