Включить ARCore для Android

На этой странице описывается, как включить функциональность ARCore в ваших проектах Unity, предназначенных для устройств Android. Для этого вам необходимо:

  1. Импорт ARCore SDK для Unity
  2. Настройте приложение как обязательное или необязательное с дополненной реальностью.
  3. Убедитесь, что ваше приложение соответствует требованиям конфиденциальности пользователей ARCore.

Сервисы Google Play для дополненной реальности

ARCore SDK делают функции дополненной реальности доступными на устройствах с поддержкой ARCore , на которых установлены службы Google Play для дополненной реальности (ARCore).

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

Перед началом сеанса дополненной реальности приложения должны:

  1. Убедитесь, что ARCore поддерживается, вызвав CheckApkAvailability .
  2. Убедитесь, что Службы Google Play для AR установлены и обновлены, а необходимые данные профиля устройства ARCore загружены, вызвав Session.RequestApkInstallation(bool userRequested) .

Импорт ARCore SDK для Unity

  1. Откройте Unity и создайте новый 3D- проект.

  2. Установите пакеты для конкретной версии.

    Единство 2020

    Выберите «Окно» > «Диспетчер пакетов» и установите следующие пакеты:

    • Многопользовательский HLAPI (требуется для образца Cloud Anchors)
    • XR Plugin Management (требуется для Instant Preview, который использует TrackedPoseDriver )

    Единство 2019

    Выберите «Окно» > «Диспетчер пакетов» и установите следующие пакеты:

    • Многопользовательский HLAPI (требуется для образца Cloud Anchors)
    • XR Legacy Input Helpers (требуется для Instant Preview, который использует TrackedPoseDriver )

    Единство 2018

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

    Единство 2017

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

  3. Импортируйте ARCore SDK для Unity:

    1. Выберите «Активы» > «Импортировать пакет» > «Пользовательский пакет» .

    2. Выберите загруженный пакет arcore-unity-sdk-1.25.0.unitypackage .

    3. В диалоговом окне «Импорт пакета» убедитесь, что выбраны все параметры пакета, и нажмите «Импорт» .

В окне проекта Unity вы должны увидеть как файлы SDK, так и пример приложения HelloAR в Assets/GoogleARCore/Examples/HelloAR/ .

Настройте приложение как обязательное или необязательное с дополненной реальностью.

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

Требуется дополненная реальность

Чтобы приложение, требующее дополненной реальности , можно было использовать, требуется устройство с поддержкой ARCore , на котором установлены службы Google Play для дополненной реальности .

  • Магазин Google Play делает приложения, требующие дополненной реальности, доступными только на устройствах, поддерживающих ARCore .

  • Когда пользователи устанавливают приложение, требующее дополненной реальности, магазин Google Play автоматически устанавливает Сервисы Google Play для дополненной реальности . Однако ваше приложение все равно должно выполнять дополнительные проверки во время выполнения на случай, если Сервисы Google Play для AR должны быть обновлены или удалены вручную, или если данные профиля устройства ARCore устарели.

Дополнительные сведения см. в разделе Публикация приложений дополненной реальности в магазине Google Play .

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

Единство 2020

  1. Откройте Правка > Настройки проекта . Выберите Google ARCore и убедитесь, что установлен флажок ARCore Required .

  2. Установите соответствующий минимальный уровень API , нажав «Правка» > «Настройки проекта» > «Проигрыватель» и выбрав вкладку со значком Android. В разделе «Другие настройки» > «Идентификация» выберите минимальный уровень API 24 или выше.

Единство 2019

  1. Откройте Правка > Настройки проекта . Выберите Google ARCore и убедитесь, что установлен флажок ARCore Required .

  2. Установите соответствующий минимальный уровень API , нажав «Правка» > «Настройки проекта» > «Проигрыватель» и выбрав вкладку со значком Android. В разделе «Другие настройки» > «Идентификация» выберите минимальный уровень API 24 или выше.

Единство 2018

  1. Откройте Правка > Настройки проекта . Выберите Google ARCore и убедитесь, что установлен флажок ARCore Required .

  2. Установите соответствующий минимальный уровень API , нажав «Правка» > «Настройки проекта» > «Проигрыватель» и выбрав вкладку со значком Android. В разделе «Другие настройки» > «Идентификация» выберите минимальный уровень API 24 или выше.

Единство 2017

  1. Откройте «Правка» > «Настройки проекта» > «Google ARCore» и убедитесь, что установлен флажок «Требуется ARCore» .

  2. Установите соответствующий минимальный уровень API , нажав «Правка» > «Настройки проекта» > «Проигрыватель» и выбрав вкладку со значком Android. В разделе «Другие настройки» > «Идентификация» выберите минимальный уровень API 24 или выше.

Ваше приложение будет автоматически выполнять проверки во время выполнения, чтобы убедиться, что устройство поддерживает ARCore и на нем установлены службы Google Play для дополненной реальности, а данные профиля устройства ARCore актуальны. Если Сервисы Google Play для AR не установлены (возможно, потому, что они были удалены пользователем) или версия слишком старая, ваше приложение предложит пользователю установить или обновить ее. Если данные профиля устройства ARCore устарели, ваше приложение загрузит и обновит их. В случае сбоя установки или обновления (возможно, из-за сбоя сети) Session.Status вернет ошибку, и ваше приложение должно обработать эту ошибку и завершить работу.

Дополненная реальность Необязательно

Дополнительное приложение дополненной реальности имеет дополнительные функции дополненной реальности, которые активируются только на устройствах с установленными сервисами Google Play для дополненной реальности .

  • Дополнительные приложения AR можно устанавливать и запускать на устройствах, не поддерживающих ARCore.

  • Когда пользователи устанавливают дополнительное приложение AR, магазин Google Play не будет автоматически устанавливать Сервисы Google Play для AR вместе с приложением.

Чтобы сделать приложение AR необязательным, выполните следующие действия.

Единство 2020

  1. Откройте Правка > Настройки проекта . Выберите Google ARCore и снимите флажок ARCore Required .

  2. Установите соответствующий минимальный уровень API , нажав «Правка» > «Настройки проекта» > «Проигрыватель» и выбрав вкладку со значком Android. В разделе «Другие настройки» > «Идентификация» выберите минимальный уровень API 18 или выше.

Единство 2019

  1. Откройте Правка > Настройки проекта . Выберите Google ARCore и снимите флажок ARCore Required .

  2. Установите соответствующий минимальный уровень API , нажав «Правка» > «Настройки проекта» > «Проигрыватель» и выбрав вкладку со значком Android. В разделе «Другие настройки» > «Идентификация» выберите минимальный уровень API 18 или выше.

Единство 2018

  1. Откройте Правка > Настройки проекта . Выберите Google ARCore и снимите флажок ARCore Required .

  2. Установите соответствующий минимальный уровень API , нажав «Правка» > «Настройки проекта» > «Проигрыватель» и выбрав вкладку со значком Android. В разделе «Другие настройки» > «Идентификация» выберите минимальный уровень API 18 или выше.

Единство 2017

  1. Откройте Edit > Project Settings > Google ARCore и снимите флажок ARCore Required .

  2. Установите соответствующий минимальный уровень API , нажав «Правка» > «Настройки проекта» > «Проигрыватель» и выбрав вкладку со значком Android. В разделе «Другие настройки» > «Идентификация» выберите минимальный уровень API 18 или выше.

Выполнение проверок во время выполнения

При запуске ваше приложение должно вызвать Session.CheckApkAvailability() , чтобы проверить, поддерживает ли устройство ARCore и, если да, установлены ли и обновлены ли сервисы Google Play для AR и данные профиля устройства ARCore.

Ваше приложение должно обрабатывать следующие условия:

Условие Действие
Устройство не поддерживает ARCore. Скрывает функциональность, связанную с дополненной реальностью.
Устройство поддерживает ARCore, но сервисы Google Play для AR и/или данные профиля устройства ARCore не установлены или устарели. Предлагает пользователю установить или обновить данные профиля устройства Google Play Services для AR и/или ARCore, вызвав Session.RequestApkInstallation() .
Устройство поддерживает ARCore и сервисы Google Play для AR, а данные профиля устройства ARCore установлены и обновлены. Создает Session ARCore и начинает использовать ARCore.

Требования конфиденциальности пользователей

Убедитесь, что ваше приложение соответствует требованиям конфиденциальности пользователей ARCore.

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

Прочтите код в примере приложения и справочнике по API ARCore для Unity .