Как НЕ доставлять AppleWatch часть приложения iOS

У нас есть клиент, использующий наш исходный код. Этот проект включает в себя Apple Watch, но они пока не хотят встраивать их в свое приложение. Они удалили Embed App Extensions. Они смогли отправить заявку в App Store, но затем получили электронное письмо:

Мы обнаружили одну или несколько проблем с вашей недавней доставкой для "XXX". Для обработки доставки необходимо устранить следующие проблемы: Неверная поддержка WatchKit — комплект содержит недопустимую реализацию WatchKit. Приложение могло быть создано или подписано с помощью несовместимых или предварительных инструментов. Посетите сайт developer.apple.com для получения дополнительной информации. Как только эти проблемы будут исправлены, вы можете повторно доставить исправленный двоичный файл. С уважением, команда App Store.

Какие минимальные изменения нужно внести в проект, который не будет включать компонент Apple Watch, чтобы он был там, когда они захотят добавить его позже?


person Jason Hocker    schedule 25.06.2015    source источник
comment
Это обновление существующего приложения (у которого уже есть расширение для Apple Watch) или совершенно новая версия?   -  person nhgrif    schedule 26.06.2015
comment
Совершенно новый выпуск, но я хотел бы услышать оба ответа, если они разные. Они берут код для одного приложения и меняют идентификатор пакета, чтобы опубликовать его как новое приложение.   -  person Jason Hocker    schedule 26.06.2015
comment
Какую версию Xcode вы использовали для сборки релиза?   -  person Paulw11    schedule 26.06.2015
comment
Это для Xcode 6.3.2. Но я хотел бы услышать ответ, если это изменится в Xcode 7.   -  person Jason Hocker    schedule 26.06.2015
comment
Просто удалите цель WatchKit (приложение Apple Watch).   -  person Seyyed Parsa Neshaei    schedule 30.06.2015
comment
Есть ли менее разрушительный способ? Боюсь, клиент позже захочет код WatchKit, а их знания невысоки. Попытка обработать слияние файла проекта сложна.   -  person Jason Hocker    schedule 30.06.2015
comment
Вы также удалили расширение из целевых зависимостей?   -  person Robert Wijas    schedule 30.06.2015
comment
Как отправить приложение? *.ipa из загрузчика приложений или *.archive из Xcode? Я заметил, что если вы сохраните расширение в целевых зависимостях, оно будет присутствовать в вашем файле архива. Поэтому я бы попытался удалить расширение из целевых зависимостей и попробовать еще раз. Предупреждение: я не проверял это. Пожалуйста, дайте мне знать, если это поможет. Спасибо.   -  person Robert Wijas    schedule 30.06.2015
comment
Как сказал Сейед, удаление цели WatchKit было бы наиболее эффективным способом. Это не должно быть разрушительным. Я предполагаю, что вы управляете системой контроля версий, а не вашим клиентом? Какой тип контроля версий вы используете? Если вы используете Git, это очень просто, просто сохраните цель Watch в проекте в вашей ветке разработки или функции. Перед выпуском выполните слияние со своей веткой выпуска и удалите там цель Watch. Даже если ваш клиент выполняет фактическую отправку, он может просто проверить ветку выпуска.   -  person David    schedule 01.07.2015


Ответы (1)


Я не видел настройки, которую можно было бы добавить в info.plist.

Создайте только приложение для iPhone, а не приложение для часов, используя правильную схему в Xcode. Схемы — это то, как вы можете контролировать, какие цели создавать в Xcode.

Когда цель комплекта часов была добавлена, была создана схема для создания приложения для часов и мобильного приложения.

При экспорте приложения для выпуска используйте только существующую схему мобильного приложения, не включающую целевую ОС для часов.

Документ редактора схем от Apple: https://developer.apple.com/library/mac/recipes/xcode_help-scheme_editor/Articles/SchemeDialog.html

person adrian.coroian    schedule 02.07.2015