Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Добавление возможностей в приложения часто требует дополнительной подготовки. В это руководстве описано, как настроить поддержку всех возможностей приложения.
Apple предоставляет разработчикам возможности, которые зачастую называют службами приложений, как способ расширить функционал и область применения приложений iOS. Возможности позволяют разработчикам реализовать более глубокую интеграцию функций платформы в свои приложения, такие как совершение денежных операций из приложения, использование дополнительных служб устройств, например Siri, а также многое другое. Эти возможности можно использовать в проектах Xamarin.iOS. Полный список служб представлен ниже:
- Группы приложений
- Связанные домены
- Защита данных
- Игровой центр
- HealthKit
- HomeKit
- Конфигурация беспроводных периферийных устройств
- iCloud
- Покупки из приложений
- Звук между приложениями
- Apple Pay
- Кошелек
- Push-уведомление
- Личная VPN
- Siri
- Карты
- Фоновые режимы
- Обмен связками ключей
- Расширения сети
- Конфигурация хот-спота
- Несколько путей
- Чтение тегов NFC
Возможности можно включить через Visual Studio для Mac и Visual Studio 2019 или вручную на портале разработчиков Apple. Для реализации некоторых возможностей, таких как Wallet, Apple Pay и iCloud, требуется дополнительная настройка идентификаторов приложений.
В этом руководстве описывается порядок реализации каждой из этих служб приложений автоматически (с помощью Visual Studio) и вручную (через центр разработчиков), включая дополнительные необходимые настройки.
Добавление служб приложений
Чтобы использовать возможности, приложению требуется допустимый профиль подготовки, который содержит идентификатор приложения с соответствующей включенной службой. Создать такой профиль подготовки можно автоматически в Visual Studio для Mac и Visual Studio 2019 или вручную в центре разработчиков Apple.
В этом разделе описано, как использовать автоматическую подготовку Visual Studio или центр разработчиков для реализации большинства возможностей. Существуют некоторые возможности, такие как Wallet, iCloud, Apple Pay и группы приложений, которые требуют дополнительной настройки. Более подробно они описаны в соответствующих руководствах.
Внимание
Не все возможности можно добавить и реализовать с помощью автоматической подготовки. Далее приведен список поддерживаемых возможностей:
- HealthKit
- HomeKit
- Личная VPN
- Конфигурация беспроводных периферийных устройств
- Звук между приложениями
- SiriKit
- Хот-спот
- Расширения сети
- Чтение тегов NFC
- Несколько путей
Такие возможности, как push-уведомления, Game Center, покупки из приложений, карты, обмен связками ключей, связанные домены и защита данных в настоящее время не поддерживаются. Чтобы добавить эти возможности, воспользуйтесь подготовкой вручную и следуйте инструкциям в разделе Центр разработчиков.
Использование интегрированной среды разработки
Возможности содержатся в файле Entitlements.plist в Visual Studio для Mac. Чтобы добавить возможности, выполните следующие действия:
Откройте файл Info.plist приложения iOS, выберите схему Автоматическая подготовка и вашу команду в поле со списком Команда. Если требуется помощь, следуйте указаниям в руководстве по автоматической подготовке:

Откройте файл Entitlements.plist и выберите возможности, которые требуется добавить:

При выборе возможности происходит следующее:
- Добавление возможности в идентификатор приложения
- Добавление пары "ключ-значение" назначения в файл Entitlements.plist.
После выполнения этих задач в Visual Studio для Mac отображается следующее сообщение об успешном выполнении:

Использование центра разработчиков
Для использования центра разработчиков необходимо сначала создать идентификатор приложения, а затем создать профиль подготовки с помощью этого идентификатора. Эти шаги детально описаны ниже.
Создание идентификатора приложения с помощью службы приложения
Перейдите в центр разработчиков Apple на Mac (или на узел сборки Mac, если используется компьютер с ОС Windows) и выполните вход.
Выберите Certificates, Identifiers, and Profiles (Сертификаты, идентификаторы и профили):

В разделе Identifiers (Идентификаторы) выберите элемент App IDs (ИД приложений):

Чтобы создать идентификатор, в правом верхнем углу нажмите кнопку +.
Введите описание идентификатора приложения, выберите явный идентификатор приложения и введите идентификатор пакета в формате
com.domain.appname. Этот идентификатор пакета должен совпадать с идентификатором пакета в проекте:
В разделе App Services (Службы приложений) выберите одну или несколько служб, которые требуется добавить в приложение:

Нажмите Continue (Продолжить).
Подтвердите идентификатор приложения. Каждая служба будет находиться в одном из следующих состояний: Enabled (Включено), Disabled (Отключено) или Configurable (Настраиваемая), как показано ниже. Если указано состояние Enabled (Включено), то служба готова для использования в профиле подготовки. Если указано состояние Configurable (Настраиваемая), то для использования этой возможности требуется дополнительная настройка. Более подробно такие дополнительные шаги описаны в последующих разделах.

Нажмите Register (Зарегистрировать), а затем — Done (Готово). Только что созданный идентификатор приложения должен отобразиться в списке идентификаторов приложений iOS.
Создание профиля подготовки
Теперь необходимо создать профиль подготовки, содержащий этот идентификатор приложения. Выполните приведенные ниже действия:
В Центре разработчиков Apple перейдите к профилям > подготовки всех:

Чтобы создать профиль подготовки, в правом верхнем углу нажмите кнопку +.
Выберите тип создаваемого профиля подготовки и нажмите Continue (Продолжить):

В раскрывающемся списке выберите идентификатор приложения, который был создан выше, и нажмите Continue (Продолжить):

Выберите сертификаты, используемые для подписывания приложения, и нажмите Continue (Продолжить):

Выберите устройства, которые будут включены в этот профиль, и нажмите Continue (Продолжить):

Присвойте имя профилю, чтобы его можно было идентифицировать, и нажмите Continue (Продолжить) для создания профиля:

Нажмите кнопку Download (Скачать), чтобы скачать профиль, а затем дважды щелкните файл в Finder, чтобы установить профиль подготовки.
Если вы используете Visual Studio, убедитесь, что выбран вариант Подготовка вручную.
В Visual Studio для Mac / Visual Studio перейдите к подписи пакета параметров > проекта и задайте профиль подготовки только что созданному:

Внимание
Также может понадобится задать ключи назначения в файле Entitlement.plist и закрытые ключи в файле Info.plist. Дополнительные сведения об этих назначениях см. в руководстве Работа с назначениями.
Next Steps
После включения возможности на стороне сервера необходимо выполнить ряд действий, чтобы разрешить приложению использовать эту возможность. Ниже перечислены дополнительные действия, которые необходимо выполнить:
- Используйте в приложении пространство имен платформы.
- Добавьте необходимые назначения к вашему приложению. Подробные сведения о необходимых назначениях и об их добавлении см. в руководстве Общие сведения о назначениях.
Возможности по устранению неполадок
Ниже описаны некоторые из наиболее распространенных проблем, которые могут создать трудности при разработке приложения со включенной службой приложения.
- Убедитесь в том, что идентификатор был правильно создан и зарегистрирован в разделе Certificates, IDs & Profiles (Сертификаты, идентификаторы и профили) на портале разработчиков Apple.
- Убедитесь, что служба добавлена в идентификатор приложения (или расширения), а также что служба настроена на использование группы приложений/идентификатора продавца/контейнера, созданных ранее в разделе Certificates, IDs & Profiles (Сертификаты, идентификаторы и профили) на портале разработчиков Apple.
- Убедитесь, что профили подготовки и идентификаторы приложений были установлены, а также что в файле Info.plist приложения (в проекте Xamarin) используется один из настроенных выше идентификаторов приложений.
- Убедитесь, что в файле Entitlements.plist приложения (в проекте Xamarin) включена соответствующая служба.
- Убедитесь, что в файле info.plist заданы соответствующие закрытые ключи.
- Убедитесь, что в Подписывании пакета iOS приложения параметр Настраиваемые назначения установлен в Entitlements.plist. Эта настройка не устанавливается по умолчанию для сборок отладки и симулятора iOS.
Итоги
В этом руководстве описаны возможности или службы приложений, а также описан порядок их включения с помощью Visual Studio и в центре разработчиков Apple. В нем также представлены подробные сведения о настройке более сложных служб, таких как Wallet, iCloud, Apple Pay и группы приложений. Наконец, в руководстве рассматриваются дальнейшие действия по настройке и варианты устранения простых неполадок.
