Подготовка вручную для приложений iOS

Подготовка вручную — это подход к развертыванию приложения iOS для .NET Multi-platform (.NET MAUI) на устройстве с полным контролем над созданными данными подготовки. С помощью этого подхода вы вручную создадите удостоверения подписи, идентификаторы приложений и профили подготовки в учетной записи разработчика Apple, а затем загрузите эти данные в Visual Studio. Перед началом процесса подготовки вручную необходимо убедиться, что в Visual Studio добавлена учетная запись разработчика Apple. Дополнительные сведения см. в разделе "Управление учетными записями Apple".

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

Создание сертификата подписи

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

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

Важно!

В любое время можно использовать только два сертификата разработки iOS. Чтобы создать еще один сертификат, необходимо отозвать один из имеющихся. Компьютер с отозванным сертификатом не сможет подписать приложение.

После добавления учетной записи разработчика Apple в Visual Studio необходимо создать сертификат подписи.

  1. В Visual Studio перейдите в раздел "Параметры > инструментов>" Xamarin > Apple Accounts.
  2. В диалоговом окне "Учетные записи разработчиков Apple" выберите команду и выберите команду "Просмотреть сведения".
  3. В диалоговом окне "Сведения" выберите "Создать сертификат>" для разработки iOS. Будет создано новое удостоверение подписи и будет синхронизироваться с Apple, если у вас есть правильные разрешения.

Важно!

Закрытый ключ и сертификат, составляющие удостоверение подписывания, также экспортируются в цепочку ключей на узле сборки Mac, если интегрированная среда разработки связана с ней. Дополнительные сведения см. в разделе "Пара с Mac для разработки iOS".

Основные сведения о парах ключей сертификатов

Профиль разработчика содержит сертификаты, связанные ключи и все профили подготовки, связанные с учетной записью разработчика Apple. Существует две версии профиля разработчика— одна существует в учетной записи разработчика Apple, а другая — на локальном компьютере. Разница между двумя ключами — это тип ключей, которые они содержат: профиль в учетной записи разработчика Apple содержит все открытые ключи, связанные с вашими сертификатами, а копия на локальном компьютере содержит все закрытые ключи. Чтобы сертификаты были допустимыми, пары ключей должны соответствовать.

Предупреждение

Потеря сертификата и связанных ключей может быть невероятно разрушительным, так как потребует отзыва существующих сертификатов и повторной подготовки любых связанных устройств. После успешной настройки сертификата разработки экспортируйте резервную копию и сохраните ее в безопасном месте. Дополнительные сведения о том, как это сделать, см. в статье "Экспорт учетных записей разработчиков " на help.apple.com.

Подготовка устройства iOS к разработке

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

Добавить устройство

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

  1. Подключение устройство, подготовленное на локальном компьютере Mac с помощью USB-кабеля.

  2. Откройте Xcode и перейдите к устройствам и симуляторам окон>.

  3. В Xcode перейдите на вкладку "Устройства" и выберите устройство из списка подключенных устройств.

  4. В Xcode скопируйте значение идентификатора в буфер обмена:

    Xcode devices and simulator window with the iOS identifier string location highlighted.

  5. В веб-браузере перейдите в раздел "Устройства" учетной записи разработчика Apple и нажмите кнопку + .

  6. На странице "Регистрация нового устройства" задайте правильную платформу и укажите имя нового устройства. Затем вставьте идентификатор из буфера обмена в поле Идентификатор устройства (UDID) и нажмите кнопку "Продолжить".

    Register a device by naming it and entering its unique device identifier.

  7. На странице "Регистрация нового устройства" просмотрите сведения и нажмите кнопку "Зарегистрировать".

Повторите предыдущие шаги для любого устройства iOS, на которое вы хотите развернуть приложение iOS .NET MAUI.

Создание идентификатора приложения

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

Важно!

Идентификатор пакета для приложения MAUI .NET хранится в файле проекта в качестве свойства идентификатора приложения:

  • В Visual Studio в Обозреватель решений щелкните правой кнопкой мыши проект приложения .NET MAUI и выберите "Свойства". Затем перейдите на вкладку "Общие > общие " MAUI. Поле идентификатора приложения содержит идентификатор пакета.
  • В Visual Studio для Mac в окне решения щелкните правой кнопкой мыши проект приложения .NET MAUI и выберите "Свойства". Затем в окне "Свойства проекта" выберите вкладку "Сведения о сборке > приложения". Поле идентификатора приложения содержит идентификатор пакета.

При обновлении значения поля идентификатора приложения значение идентификаторапакета в info.plist будет автоматически обновлено.

Существует два типа идентификатора приложения:

  • Подстановочные знаки. Идентификатор приложения wild карта позволяет использовать один идентификатор приложения для сопоставления нескольких приложений и обычно принимает формуcom.domainname.*. Идентификатор приложения с диким карта можно использовать для установки большинства приложений на устройство и использовать для приложений, которые не поддерживают возможности для конкретных приложений.
  • Явная транзакция. Явный идентификатор приложения является уникальным для одного приложения и обычно принимает форму com.domainname.myid. Явный идентификатор приложения позволяет установить одно приложение с соответствующим идентификатором пакета на устройство. Явные идентификаторы приложений обычно используются для приложений, которые обеспечивают специальные возможности приложения, такие как Apple Pay или Game Center.

Рекомендуемый подход — создать дикий идентификатор приложения карта, если приложение не использует возможности для конкретных приложений. Дополнительные сведения о возможностях см. в разделе "Возможности".

Идентификатор приложения карта можно создать с помощью следующих действий:

  1. В веб-браузере перейдите в раздел "Идентификаторы " учетной записи разработчика Apple и нажмите кнопку + .

  2. На странице "Регистрация нового идентификатора" выберите идентификаторы приложений и нажмите кнопку "Продолжить".

  3. На странице "Регистрация нового идентификатора" выберите тип приложения и нажмите кнопку "Продолжить".

  4. На странице "Регистрация идентификатора приложения" укажите описание и задайте идентификаторпакета в wild карта. Затем введите идентификатор приложения в формате com.domainname.* и нажмите кнопку "Продолжить ":

    Screenshot of new App ID registration page with required fields populated.

  5. На странице "Подтверждение идентификатора приложения" просмотрите сведения и нажмите кнопку "Зарегистрировать".

Создание профиля подготовки для разработки

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

Профиль подготовки разработки можно создать с помощью следующих действий:

  1. В веб-браузере перейдите в раздел "Профили " учетной записи разработчика Apple и нажмите кнопку + .

  2. На странице "Регистрация нового профиля подготовки" в разделе "Разработка" выберите "Разработка приложений iOS" и нажмите кнопку "Продолжить".

    Screenshot of creating a provisioning profile for iOS app development.

  3. На странице "Создание профиля подготовки" выберите идентификатор приложения для использования и нажмите кнопку "Продолжить".

    Screenshot of adding an App ID to a provisioning profile.

  4. На странице "Создание профиля подготовки" выберите сертификаты для включения в профиль подготовки и нажмите кнопку "Продолжить".

    Screenshot of adding a certificate to a provisioning profile.

  5. На странице "Создание профиля подготовки" выберите устройства, на которые будет установлено приложение, а затем нажмите кнопку "Продолжить".

    Screenshot of adding a device to a provisioning profile.

  6. На странице "Создание профиля подготовки" укажите имя профиля подготовки и нажмите кнопку "Создать".

    Screenshot of naming a provisioning profile.

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

Загрузка профилей подготовки в Visual Studio.

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

  1. В Visual Studio перейдите в раздел "Параметры > инструментов>" Xamarin > Apple Accounts.
  2. В диалоговом окне "Учетные записи разработчиков Apple" выберите команду и нажмите кнопку "Просмотреть сведения...".
  3. В диалоговом окне "Сведения" убедитесь, что новый профиль отображается в списке профилей подготовки. При необходимости перезапустите Visual Studio, чтобы обновить список.
  4. В диалоговом окне "Сведения" нажмите кнопку "Скачать все профили".

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

Включение подготовки вручную

После создания профиля подготовки разработки вручную и его установки в Visual Studio необходимо настроить проект приложения .NET MAUI для использования ручной подготовки.

  1. В Обозреватель решений щелкните правой кнопкой мыши проект приложения .NET MAUI и выберите "Свойства". Затем перейдите на вкладку "Общие общие" MAUI > и убедитесь, что значение поля идентификатора приложения соответствует формату созданного ранее идентификатора приложения.

  2. В свойствах проекта перейдите на вкладку подписывания пакета iOS и убедитесь, что в раскрывающемся списке "Схема" выбрана ручная подготовка:

    Screenshot of bundle signing tab for iOS in Visual Studio.

  3. В свойствах подписывания пакета выберите удостоверение подписи и профиль подготовки или задайте для параметра "Автоматический". Если для удостоверений подписывания и профиля подготовки задано значение "Автоматически", Visual Studio выберет удостоверение подписи и профиль подготовки на основе идентификатора пакета в Info.plist (который идентичен значению свойства идентификатора приложения в файле проекта).

Развернуть на устройстве

После настройки подготовки в проекте приложения .NET MAUI приложение можно развернуть на устройстве.

  1. В Visual Studio убедитесь, что интегрированная среда разработки связана с узлом сборки Mac. Дополнительные сведения см. в разделе "Пара с Mac для разработки iOS".

  2. Убедитесь, что устройство iOS подключено к узлу сборки Mac через USB или Wi-Fi. Дополнительные сведения о беспроводном развертывании см. в статье "Беспроводное развертывание" для приложений iOS для .NET MAUI.

  3. На панели инструментов Visual Studio используйте раскрывающийся список "Целевой объект отладки", чтобы выбрать удаленные устройства iOS, а затем устройство, подключенное к узлу сборки Mac:

    Select your remote device in Visual Studio.

  4. На панели инструментов Visual Studio нажмите зеленую кнопку "Пуск", чтобы запустить приложение на удаленном устройстве:

    Visual Studio iOS device debug target choice.

Примечание.

Альтернативный подход к развертыванию приложения iOS для .NET MAUI на устройстве — использование горячего перезапуска. Горячая перезагрузка позволяет развернуть приложение .NET MAUI на 64-разрядном локальном устройстве iOS из Visual Studio, не требуя узла сборки Mac. Дополнительные сведения см. в статье "Развертывание приложения iOS с помощью горячего перезапуска".

Подготовка служб приложений

Apple предоставляет ряд служб приложений, известных как возможности, которые можно активировать для приложения iOS .NET MAUI. Эти возможности необходимо настроить как в профиле подготовки, так и при создании идентификатора приложения, а также в файле Entitlements.plist , который следует добавить в проект приложения .NET MAUI. Дополнительные сведения о возможностях см. в разделе "Права и возможности".