Выходя за рамки отладки и выпуска

Многие основные приложения имеют более одной среды. Staging, Beta, Omega, Debug или любое другое имя, которое вы хотите им дать, они действуют как платформа для тестирования. Инженер по обеспечению качества использует их для проверки работоспособности, чтобы минимизировать количество ошибок в приложении, прежде чем дать ему зеленый свет для выпуска в рабочую среду.

Предпосылки

Чтобы следовать этому руководству, вам понадобятся:

  • Базовое знакомство со Swift.
  • Установлен как минимум Xcode 10.0+.

Конфигурация Xcode

В вашем Xcode вы заметите, что в настоящее время в вашем проекте есть две среды - Debug и Release. По умолчанию, когда вы запускаете и собираете свой проект, вы находитесь в среде отладки. Но когда вы заархивируете свое приложение в App Store, оно будет в среде выпуска.

Вы продублируете еще одну среду и назовете ее Staging. Вы можете сделать это, как показано на изображении ниже:

Схема Xcode

Затем перейдите в «Управление схемой» и создайте дополнительную схему, нажав (+) и назовите ее DaddyCoding Staging. Теперь вы заметите, что у вас есть еще одна схема.

Вы отредактируете DaddyCoding Staging и измените некоторую конфигурацию сборки. Поскольку вы дублируете из Debug, по умолчанию он имеет конфигурацию сборки Debug. Вы не хотите этого - вы хотите, чтобы это была конфигурация промежуточной сборки.

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

Идентификатор пакета продукта Xcode

Обратите внимание, что в каждой среде используется свой идентификатор пакета. Например, если идентификатор вашего производственного продукта com.daddycoding.DaddyCoding, то ваша постановка должна быть com.daddycoding.DaddyCoding.staging.

Перейдите в «Настройки сборки» и добавьте другой идентификатор пакета для другой среды. Все они должны быть уникальными. Оставьте Debug как есть, поскольку мы его не используем.

Подпись Xcode

Затем, используя несколько сред, рекомендуется всегда снимать флажок Автоматически управлять подписью », чтобы вы могли контролировать профиль обеспечения, который вы будете использовать.

Вы заметите, что есть две подписи, в том числе Release и Staging. Release должен использовать свой собственный уникальный идентификатор пакета, как объяснялось ранее, и свой собственный профиль подготовки. То же самое и с Staging.

Вы можете создать идентификатор пакета и профиль подготовки в developer.apple.com.

Значок приложения Xcode

Чтобы отличаться от других, вы даже можете создавать разные изображения для разных сред, чтобы знать, в какой среде вы находитесь. Здесь вы создадите два разных изображения с именем среды.

Изображения хранятся внутри Assets.xcassets и называются AppIcon-production и AppIcon-staging.

Управляйте своей средой

Вы можете выбрать либо Staging, либо Production среду. В любом случае значки приложений должны выглядеть иначе.

Лучшая практика

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

Лучше всего иметь одну цель с несколькими схемами и конфигурациями.

Куда пойти отсюда

Если вас это волнует и вы любите бросать вызов самому себе, не стесняйтесь читать некоторые другие уроки, которые я подготовил, чтобы помочь вам улучшить: