Mobile DevOps: автоматическая подпись кода для iOS-приложений

Mobile DevOps: автоматическая подпись кода для iOS-приложений

7 апреля 2022 г.

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


В этом руководстве вы узнаете, как использовать Bitrise, комплексное мобильное решение DevOps, для автоматической подписи кода приложения iOS.


Что такое автоматическая подпись кода?


Подписание приложения позволяет системе определить, кто подписал приложение, и убедиться, что приложение не было изменено с момента его подписания. Таким образом, автоматическое подписание кода в данном контексте означает автоматическое управление профилями обеспечения, доступными в вашей учетной записи на портале разработчиков Apple. Это делается путем настройки некоторой формы аутентификации для вашей учетной записи Apple, а затем использования Bitrise для загрузки и установки профиля подготовки для вашего приложения в процессе сборки.


Итак, на высоком уровне, чтобы использовать автоматическую подпись кода с Bitrise, вам необходимо:


  1. Загрузите сертификаты подписи кода в Bitrise.

  1. Подключите свою учетную запись Apple Developer Portal к Bitrise либо через Apple ID, либо через App Store Connect API.

  1. Используйте один из шагов Bitrise, который поддерживает автоматическое управление активами подписи кода.

Как вы автоматически кодируете с Bitrise?


Недавно, как подробно описано в этой статье, Bitrise упростила процесс подписания кода. Суть в том, что теперь есть два способа автоматизации подписи кода на Bitrise: использование Xcode Build/Archive Step (с объединенным шагом iOS Auto Provision Step) в него) и не используя эти шаги, а шаг «[Управление подписью кода iOS] (https://www.bitrise.io/integrations/steps/manage-ios-code-signing)».


В этом руководстве мы специально рассмотрим процесс использования шага «Xcode Archive & Export for iOS» для автоматической подписи ресурсов для приложения iOS.


Архив и экспорт Xcode для iOS


Как я упоминал ранее, шаг «[Архив и экспорт Xcode для iOS] (https://www.bitrise.io/integrations/steps/xcode-archive)» автоматически управляет вашими активами подписи кода, архивами, а затем экспортирует .ipa файл. Это достигается за счет использования xcodebuild, инструмента командной строки, который позволяет вам создавать, запрашивать, анализировать, тестировать и архивировать операции над вашими проектами и рабочими пространствами Xcode.


Хорошо, давайте погрузимся!


Создание кода


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


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


Важно отметить, что прежде чем вы сможете продолжить, все методы подписи кода Bitrise iOS требуют, чтобы вы экспортировали и загрузили свои сертификаты подписи кода iOS непосредственно в Bitrise.


Загрузка сертификатов в Bitrise


Предоставить доступ к App Store Connect


Затем Bitrise требуется доступ к App Store Connect, чтобы получить доступ к ресурсам подписи вашего приложения.


Итак, для этого войдите на [Портал разработчиков Apple] (https://developer.apple.com/account/) и перейдите к App Store Connect. Затем оттуда нажмите «Пользователи и доступ».


App Store Connect >> Пользователи и доступ


В разделе «Пользователи и доступ» в App Store Connect у вас будет возможность настроить два разных подхода, которые Bitrise будет использовать (позже в этом руководстве) для подключения.


  1. Использование ключа API

  1. Использование Apple ID

Настроить Bitrise для App Store Connect


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


После того, как вы вошли в свою учетную запись Bitrise, перейдите к «Настройки профиля» в контекстном меню пользователя.



В настройках вашего профиля выберите «Подключение к сервису Apple» в меню навигации слева. Там вы сможете настроить подключение к службе Apple с помощью ключа API (рекомендуется). -service-with-api-key.html#adding-api-key-authentication-data-on-bitrise) или Apple ID.


Добавление подключения к службе Apple


Настройте подключение к службе Apple в своем приложении


Предполагая, что у вас есть существующий проект iOS в Bitrise, вернитесь к Панель управления Bitrise и выберите свое приложение.


Совет. Если вы еще не добавили проект iOS, обязательно ознакомьтесь с этим руководством, чтобы помочь вам в этом!


Нажмите «Команды» и прокрутите вниз до «Подключение к службе Apple», где вы можете выбрать подключение, которое хотите использовать.


Выбор подключения к Team Apple Service


Настройте рабочий процесс Bitrise


Наконец, пришло время настроить рабочий процесс нашего проекта. Начните с перехода на вкладку «Рабочий процесс». Если вы создали новый проект iOS, ваш рабочий процесс по умолчанию будет выглядеть так же или примерно так, как показано ниже.



Чтобы настроить автоматическую подпись кода для нашего приложения iOS, мы собираемся изменить рабочий процесс, добавив и настроив один дополнительный шаг; [Архив и экспорт Xcode для iOS] (https://www.bitrise.io/integrations/steps/xcode-archive).



Архив и экспорт Xcode для iOS


Начните с добавления шага «Xcode Archive & Export for iOS» после шага «Bitrise.io Cache:Push». Этот шаг будет использоваться для кодовой подписи ранее созданных ресурсов, а затем экспорта .ipa (и других ресурсов).



Добавьте шаг «Xcode Archive & Export for iOS», нажав кнопку (+) и выполнив поиск «Xcode Archive & Export for iOS». Достаточно легко, верно?


Выбрав шаг «Архивирование и экспорт Xcode для iOS» и загрузив детали на панель, прокрутите до раздела Входные переменные . Там вы увидите три ключевых параметра конфигурации:


  1. Путь к проекту: путь к рабочей области Xcode в вашем проекте.

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

  1. Метод распространения: определяет как Xcode должен экспортировать архив. Варианты распространения: разработка, ad-hoc, магазин приложений и предприятие.

![Архив Xcode и экспорт для входных переменных iOS]


Хорошая новость заключается в том, что эти значения уже добавлены для вас как часть первоначальной настройки проекта iOS. Вы можете увидеть, что уже настроено, щелкнув и отобразив вкладку Env Vars.



Затем вам нужно выбрать метод автоматической подписи кода, который определяет, какой вариант подключения Bitrise Apple Service (например, ключ API или Apple ID) будет использоваться.



И, наконец, если вы прокрутите немного вниз в разделе Автоматическая подпись кода , вы увидите два обязательных поля, URL сертификата подписи кода и Фраза-пароль сертификата подписи кода, которые уже были настроены благодаря вам. добавление сертификатов подписи кода ранее в этом пошаговом руководстве.


Я указываю на это, чтобы вы знали почему вы должны были сделать этот шаг раньше.



Создание и вывод артефактов


И все, на этом все! Теперь, когда вы завершили настройку рабочего процесса, сохраните изменения и вернитесь на целевую страницу проекта, чтобы начать новую сборку.


После завершения сборки (надеюсь, успешной) перейдите к ней и просмотрите результат на вкладке Артефакты .


Проверка архивных ресурсов


Следующие шаги


Спасибо, что прочитали эту статью! Как видите, процесс подписания вашего приложения для iOS упрощается с помощью Bitrise и этапа Xcode Archive & Export for iOS . Теперь все, что осталось сделать, это попробовать это на себе!


Если у вас есть какие-либо вопросы или комментарии, свяжитесь со мной в [Twitter] (https://twitter.com/probablerealrob) или [LinkedIn] (https://www.linkedin.com/in/robhedgpeth/).


Удачного строительства!


Также опубликовано здесь



Оригинал
PREVIOUS ARTICLE
NEXT ARTICLE