Мое приложение iPhone подключается к трем различным серверам, говорят: производство, постановка и тестирование. Существует множество значений конфигурации, которые приложение использует в зависимости от того, к какому серверу оно подключается, например, идентификатор приложения Facebook, ключ команды TestFlight и т.д.
Я хотел бы иметь все настройки в GIT и выбирать только ту конфигурацию, которую приложение должно использовать при компиляции или выпуске. Например, когда выбрано тестирование, Product → Run in Xcode запускает отладочную версию приложения, подключенного к тестированию, а Product → Archive создает файл IPA с версией выпуска, которая также подключается к тестированию.
Я не хочу создавать больше конфигураций сборки, чем отладку и выпуск (потому что это будет означать 6 различных комбинаций конфигураций сборки/конфигураций времени выполнения). Идеальное решение, как я понимаю, будет то, что у меня есть три схемы: производство, испытание и постановка, и каждая схема выбирает один из трех Info.plist файлов для использования с приложением. Это позволило бы мне не только определять различные параметры времени выполнения, но также разные версии приложений или идентификаторы пакетов в зависимости от внутреннего сервера. Но, похоже, я не могу настроить действие "Архив" другим способом, кроме выбора другой конфигурации сборки. Любые идеи, если это может быть достигнуто каким-либо образом?
Изменить: чтобы было немного понятнее, производство/подготовка/тестирование - это сервер, а не версия приложения для iOS. Приложение для iOS выпускается в двух версиях: отладка/выпуск. Другими словами, я могу захотеть запустить отладочную версию приложения, подключенного к производственному серверу, например, для отладки сбоя, вызванного возвращением JSON с этого сервера. Я мог бы назвать серверы как A, B и C для ясности.