Создание приложений Objective-C или Swift для macOS

Важно!

Прекращение поддержки Центра приложений Visual Studio запланировано на 31 марта 2025 г. Хотя вы можете продолжать использовать Центр приложений Visual Studio, пока он не будет полностью выведен из эксплуатации, существует несколько рекомендуемых вариантов, на которые вы можете рассмотреть возможность миграции.

Узнайте больше о сроках поддержки и альтернативных вариантах.

Чтобы приступить к созданию первого приложения для Mac, сделайте следующее:

  1. Подключитесь к учетной записи службы репозитория (GitHub, Bitbucket, VSTS, Azure DevOps).
  2. Выберите репозиторий и ветвь, в которой находится ваше приложение.
  3. Настройте проект или рабочую область сборки, а также схему, которую вы хотите построить.

Примечание

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

1. Связывание репозитория

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

2. Выбор ветви

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

3. Настройка первой сборки

Перед первой сборкой необходимо настроить проект Mac.

3.1. Проект/рабочая область и схема

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

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

Пометить схему как общую

3.2. Версия Xcode

Выберите версию Xcode для запуска сборки.

3.3. Триггеры сборки

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

3.4. Приращение номера сборки

Если этот параметр включен, CFBundleVersion в info.plist приложения автоматически увеличивается для каждой сборки. Изменение происходит перед сборкой и не будет зафиксировано в репозитории.

3.5. Тесты

Если выбранная схема содержит тестовое действие с выбранным целевым объектом тестирования, можно настроить выполнение тестов в рамках каждой сборки. В настоящее время Центр приложений может выполнять модульные тесты XCTest. Центр приложений не поддерживает тесты запуска для сборок Mac.

3.6. подписывание кода;

Успешная сборка приведет к созданию .app файла. Чтобы установить сборку на устройстве, она должна быть подписана сертификатом. Чтобы подписать сборки, созданные из ветви, включите подписывание кода в области конфигурации и отправьте действительный сертификат (.p12) вместе с паролем для сертификата. Параметры в проекте Xcode должны быть совместимы с отправляемыми файлами. Профиль подготовки необязателен для подписывания кода.

В настоящее время Центр приложений поддерживает только следующие конфигурации подписывания:

  • Подписывание вручную с помощью метода экспорта разработки только с помощью сертификата разработки
  • Подписывание вручную с помощью метода экспорта идентификатора разработчика
  • Автоматическое подписывание с помощью метода экспорта development

Дополнительные сведения о входе кода см. в руководстве по подписывке кода macOS в Центре приложений и в официальном руководстве для разработчиков Apple.

3.7. CocoaPods

Центр приложений сканирует выбранную ветвь, и если он находит файл Podfile, он автоматически выполняет pod install шаг в начале каждой сборки. Это гарантирует установку всех зависимостей.

Если репозиторий уже содержит папку /Pods, центр приложений предполагает, что вы вернули модули pod в репозитории и больше не будут выполнять .pod install

3.8. Распространение в группу рассылки

Вы можете настроить каждую успешно подписанную сборку из ветви для распространения в ранее созданную группу рассылки. Вы можете добавить новую группу рассылки в разделе Распространение. Всегда есть группа рассылки по умолчанию с именем "Участники совместной работы", в которую входят все пользователи, имеющие доступ к приложению.

После сохранения конфигурации новая сборка запустится автоматически.

4. Создание результатов

После активации сборки она может находиться в следующих состояниях:

  • queued — сборка находится в очереди, ожидая освобождения ресурсов.
  • building — сборка выполняет предопределенные задачи.
  • succeeded — сборка успешно завершена.
  • failed — сборка обнаружила сбои, которые препятствовали ее завершению. Вы можете устранить неполадки со сборкой, скачав и проверив журналы сборки.
  • canceled — сборка была отменена действием пользователя или истекло время ожидания.

4.1. Журналы сборки

Для завершенной сборки (успешной или неудачной) скачайте журналы, чтобы узнать больше о том, как была выполнена сборка. Центр приложений предоставляет архив со следующими файлами:

|-- 1_build.txt (this is the general build log)
|-- build (this folder contains a separate log file for each build step)
    |-- <build-step-1> (e.g. 2_Get Sources.txt)
    |-- <build-step-2> (e.g. 3_Pod install.txt)
    |--
    |-- <build-step-n> (e.g. n_Post Job Cleanup.txt)

Журналы для конкретных этапов сборки (расположенные в build каталоге архива) полезны для устранения неполадок и понимания того, на каком этапе и почему произошел сбой сборки.

4.2. Приложение (.app)

Файл .app является архивным файлом приложения Mac, который содержит приложение Mac.

  • Если сборка подписана правильно, файл можно установить на устройство, соответствующее профилю подготовки, .app используемому при подписи. Дополнительные сведения о подписи и распространении кода с помощью Центра приложений см. в документации по подписывке кода macOS в Центре приложений.
  • Если сборка не подписана .app , разработчик может подписать файл. Например, с помощью codesign.

4.3. Файл символов (.dsym)

Файлы .dsym содержат отладочные символы для приложения.

  • Если вы добавили пакет SDK центра приложений в приложение с включенным модулем отчетов о сбоях, служба отчетов о сбоях требует этот .dsym файл для сборки, чтобы отображались отчеты о сбоях, доступные для чтения (символические).
  • Если вы добавили в приложение еще один пакет SDK для отчетов о сбоях, например пакет SDK HockeyApp, службе потребуется .dsym , чтобы файл отображал отчеты о сбоях, доступные для чтения.

Файлы .dsym не изменяются при подписи .appкода . Если вы решите подписать сборку позже, .dsym то созданный до подписывания кода будет по-прежнему действительным.

Внутренние компоненты сборки

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

Поддерживаемые версии и требования

Сведения о версии компьютера сборки обновляются при каждом добавлении новой версии macOS. Мы включаем последние версии, выпущенные Apple, как можно скорее на наших виртуальных машинах сборки.