Использование TestFlight в среде разработки CloudKit

Можно ли отправить приложение в новый TestFlight через iTunes Connect с помощью среды разработки для CloudKit?

Похоже, что только профили AdHoc Provisioning Profiles запрашивают предпочтительное имя контейнера CloudKit (Production или Development) при выполнении "Экспортирования" из Organizer, однако профили AdHoc Provisioning не содержат "бета-отчетов-активных" прав, необходимых для отправки приложений в iTunes Подключите и разрешите использование TestFlight.

Итак, если вы хотите использовать новую версию TestFlight для iTunes Connect для тестирования вашего приложения на основе CloudKit, вам нужно использовать производственную среду. У кого-нибудь еще была эта проблема?

Ответ 1

Я тоже пытался это сделать, но я не думаю, что это возможно. TestFlight предназначен прежде всего для приложений, которые вы планируете публиковать в App Store. Если вы используете бета-тестирование с пользователями iTunes, Apple ожидает, что вы будете использовать сервер Production, так как пользователи ожидают, что их контент перейдет к выпущенному продукту.

Лично я решил переключиться на Production, когда начал использовать TestFlight. Если вы просто тестируете с внутренними пользователями, у вас все еще есть возможность распределения Ad Hoc, которое, как вы указываете, позволяет использовать любой сервер.

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

В документации указано:

Во время выполнения CloudKit использует ваши приложения com.apple.developer.icloud-container-environment право на получение информации о том, используете ли вы версию разработки или производства вашего профиля обеспечения.

Поэтому вы можете добавить это в свои права, чтобы установить его в "Производство или разработка":

<key>com.apple.developer.icloud-container-environment</key>
<string>Production</string>

Вы можете попробовать установить это поле в "Разработка", а затем перейти к iTunes Connect, но я предполагаю, что Xcode перезапишет его во время загрузки, чтобы заставить вас использовать "Производство".

Ответ 2

Похоже, это невозможно.

"Обратите внимание, что приложения, распространяемые через TestFlight или хранилище, используют среду разработки". https://developer.apple.com/library/content/documentation/DataManagement/Conceptual/CloudKitQuickStart/TestingYourApp/TestingYourApp.html

Тем не менее, вы можете указать на Production, пока вы отлаживаете приложение через Xcode, установив: com.apple.developer.icloud-container-environment в "Production" в вашем файле прав.

Ответ 3

Фактически вы можете следить за этой документацией и использовать тестовую среду для тестирования своего приложения:

яблочная документация