iOS продолжает интеграцию Modify Info.plist - PullRequest
0 голосов
/ 07 ноября 2019

Я пытаюсь автоматизировать сборку и развертывание iOS для TestFlight, но при этом могу повторно развернуть ту же сборку с разными значениями конфигурации среды с помощью нашего CI-сервера. Например, если я сделал начальную сборку, которая указывает на наш тестовый бэкэнд, и развернул ее в TestFlight, я хочу позже иметь возможность получить ту же сборку, изменить URL-адрес бэкенда на Staging и развернуть его снова в TestFlight (сувеличенный номер сборки).

В настоящее время я могу создать наше приложение для iOS с использованием TeamCity и Fastlane (тренажерный зал), но проблема в том, что я получаю один IPA-файл и не вижу ни одногопростой / очевидный способ изменить любые конфигурации на нем.

У меня есть идея, как я могу решить эту проблему, но это немного сложно, поэтому хотел посмотреть, как другие люди в настоящее время делают это. Моя идея состоит в том, чтобы как-то разархивировать IPA (при условии, что это какой-то архив), получить файл Info.plist, выполнить подстановку строк для изменения настроек и, наконец, заархивировать все обратно в IPA. В качестве бонусного шага мне может понадобиться переподписать IPA, так как мой предыдущий шаг лишил законной силы подпись.

Другая идея состоит в том, чтобы добавить разные схемы для всех вариантов среды и как часть одной и той же сборки TeamCity. -строить наше приложение несколько раз для каждой среды. Мне не очень нравится этот подход, так как мне кажется, что нужно тратить немало времени на создание различных сборок, а также на их хранение, что также занимает много места и просто не выглядит элегантным решением.

Есть мысли о том, как этого добиться, не вступая в интимные отношения с МПА?

...