XR Runtime
Последнее обновление | Стабильный релиз | Кандидат на релиз | Бета-версия | Альфа-релиз |
---|---|---|---|---|
30 июля 2025 г. | - | - | - | 1.0.0-альфа05 |
Объявление зависимостей
Чтобы добавить зависимость от среды выполнения XR, необходимо добавить в проект репозиторий Google Maven. Подробнее см. в репозитории Google Maven .
Добавьте зависимости для необходимых артефактов в файл build.gradle
вашего приложения или модуля:
классный
dependencies { implementation "androidx.xr.runtime:runtime:1.0.0-alpha05" // Use in environments that do not support OpenXR testImplementation "androidx.xr.runtime:runtime-testing:1.0.0-alpha05" }
Котлин
dependencies { implementation("androidx.xr.runtime:runtime:1.0.0-alpha05") // Use in environments that do not support OpenXR testImplementation("androidx.xr.runtime:runtime-testing:1.0.0-alpha05") }
Дополнительные сведения о зависимостях см. в разделе Добавление зависимостей сборки .
Обратная связь
Ваши отзывы помогают улучшить Jetpack. Сообщите нам, если вы обнаружите новые проблемы или у вас есть идеи по улучшению этой библиотеки. Пожалуйста, ознакомьтесь с уже существующими проблемами в этой библиотеке, прежде чем создавать новую. Вы можете проголосовать за существующую проблему, нажав на кнопку со звёздочкой.
Более подробную информацию см. в документации по системе отслеживания проблем .
Версия 1.0
Версия 1.0.0-альфа05
30 июля 2025 г.
Выпущена androidx.xr.runtime:runtime-*:1.0.0-alpha05
. Версия 1.0.0-alpha05 содержит следующие коммиты .
Новые функции
- Добавьте
HandJointType
иTrackingState
. ( I55880 , b/334645808 ) - Сделать реализацию конфигурации общедоступной. ( I95860 , b/334645808 )
- Введены новые типы
SessionCreateResult
иSessionConfigureResult
. ( Icb8cb , b/334645808 ) - Добавьте новый класс
BoundingBox
, который представляет собой выровненный по осям ограничивающий прямоугольник в трехмерном пространстве, определяемый его минимальной и максимальной угловыми точками. ( Ic68c5 , b/423073468 )
Изменения API
- Переименован и перемещен
androidx.xr.scenecore.PixelDimensions
вandroidx.xr.runtime.math.IntSize2d
. Переименован и перемещенandroidx.xr.scenecore.Dimensions
вandroidx.xr.runtime.math.FloatSize3d
. Переименованandroidx.xr.scenecore.PlaneType
вandroidx.xr.scenecore.PlaneOrientation
. Переименованandroidx.xr.scenecore.PlaneSemantic
вandroidx.xr.scenecore.PlaneSemanticType
. ( Ifd405 , b/416456228 ) - Удалён класс
androidx.xr.runtime.FoV
. Вместо него используетсяandroidx.xr.runtime.FieldOfView
. ( I9ae27 ) - Добавлена дополнительная перегрузка для
Session.create
, которая может предоставитьLifecycleOwner
для присоединения к сеансу. Обратите внимание, что для владения ресурсами по-прежнему потребуется указать Activity, аLifecycleOwner
должен быть ограничен областью действия Activity. ( I1690b ) - Переименован
FakeRuntimeAnchor.anchorsCreated
вanchorsCreatedCount
( I96df9 , b/424441218 ) - Конфигурация
*Mode
были переименованы, чтобы отразить их поведение. ( I6d247 , b/414648065 ) - Для проектов, выпущенных с использованием Kotlin 2.0, требуется использование KGP 2.0.0 или более поздней версии ( Idb6b5 , b/344563182 ).
- API, связанные со строками манифеста, перенесены из
:xr:runtime:runtime
в:xr:runtime:runtime-manifest
. Имя пакета изменено сandroidx.xr.runtime
наandroidx.xr.runtime.manifest
. ( I610ad , b/418800249 ) -
Session.resume()
,Session.pause()
иSession.destroy()
удалены из API. Session больше не являетсяLifecycleOwner
. Жизненный цикл сеанса теперь будет связан с жизненным циклом Activity, переданным вSession.create()
. ( I28a03 ) - Эта библиотека теперь использует аннотации JSpecify, определяющие значение null , которые являются типовыми. Разработчикам Kotlin следует использовать следующий аргумент компилятора для обеспечения корректного использования:
-Xjspecify-annotations=strict
(это значение по умолчанию, начиная с версии 2.1.0 компилятора Kotlin) ( Ia8420 , b/326456246 ). - Основной артефакт среды выполнения (
:xr:runtime:runtime
) будет содержать только асинхронные API в стиле Kolin. Разработчики Java могут использовать:xr:runtime:runtime-guava
для доступа к совместимым API. ( I05d4a , b/426639315 ) - Основной артефакт среды выполнения (
:xr:runtime:runtime
) будет содержать только асинхронные API в стиле Kotlin. Разработчики Java могут использовать библиотекуxr:runtime:runtime-rxjava3
для доступа к совместимым API. ( I64122 , b/426639775 ) - Переместить сопрограммы в
:xr:runtime:runtime-guava
, а потоки — в:xr:runtime:runtime-rxjava3
. ( I60ae9 ) -
Session.create
иSession.configure
теперь выдаютSecurityException
, если не предоставлено достаточно разрешений, вместо возвратаSessionCreatePermissionsNotGranted
илиSessionConfigurePermissionsNotGranted
. ( I7c488 , b/430651879 )
Версия 1.0.0-альфа04
7 мая 2025 г.
Выпущены androidx.xr.runtime:runtime:1.0.0-alpha04
, androidx.xr.runtime:runtime-openxr:1.0.0-alpha04
и androidx.xr.runtime:runtime-testing:1.0.0-alpha04
. Версия 1.0.0-alpha04 содержит эти коммиты .
Новые функции
- Session теперь реализует
androidx.lifecycle.LifecycleOwner
для большей совместимости с существующими парадигмами жизненного цикла Android. - Строки манифеста для Android XR указаны и задокументированы здесь.
- Добавлены методы расширения обратного вызова пространственной видимости для отслеживания перемещения содержимого сцены внутрь или за пределы поля зрения пользователя.
- Добавлена заглушка версии
JxrPlatformAdapter
(и всех связанных с ним классов). - Session будет использоваться как в
SceneCore
, так и в Runtime вместо Session вSceneCore
. - Добавлен
ActivityPose.hitTest
, позволяющий проводитьhitTest
по виртуальному содержимому. - Теперь поддерживается указание нескольких реализаций среды выполнения во время компиляции. Во время выполнения будет загружена только одна из них в зависимости от текущего набора функций устройства.
- Добавлен новый тип компонента
SpatialPointerComponent
, позволяющий клиентам указывать значок, отображаемый для указателя, или отключать его. В настоящее время этот компонент можно прикрепить только к экземплярамPanelEntity
.
Изменения API
- Сделать реализацию конфигурации общедоступной. ( I95860 )
- Добавьте
HandJointType
иTrackingState
. ( I55880 ) - Для проектов, выпущенных с использованием Kotlin 2.0, требуется использование KGP 2.0.0 или более поздней версии ( Idb6b5 ).
-
Hand.isActive (boolean)
было изменено наHand.trackingState
. РеализацияOpenXR
была изменена соответствующим образом. - Требование разрешения
android.permission.SCENE_UNDERSTANDING
вSession.configure
изменено наandroid.permission.SCENE_UNDERSTANDING_COARSE
. - Реализован
LifecycleManager.configure
, который теперь передает объектConfig
, содержащий свойство для каждой настраиваемой функции среды выполнения. -
Session.configure
теперь можно вызывать с помощьюConfig
для настройки доступных функций среды выполнения. -
Session.create
теперь поддерживает передачуCoroutineContext
вместоCoroutineDispatcher
. -
Session.create
поддерживает загрузкуARCore
для Jetpack XR и/илиSceneCore
. Необходимо предоставить хотя бы один файл (доступны тестовые версии). -
FakePerceptionManager
выдает исключениеAnchorInvalidUuidException
, когда вAnchor.load
иAnchor.unpersist
передается недопустимый UUID. -
CoreState
больше не является классом данных.
Исправления ошибок
- Исправлены конфигурации Runtime Proguard.
Версия 1.0.0-альфа03
26 февраля 2025 г.
androidx.xr.runtime:runtime:1.0.0-alpha03
, androidx.xr.runtime:runtime-openxr:1.0.0-alpha03
и androidx.xr.runtime:runtime-testing:1.0.0-alpha03
выпущены без каких-либо заметных изменений с момента последней альфа-версии. Версия 1.0.0-alpha03 содержит следующие коммиты .
Версия 1.0.0-альфа02
12 февраля 2025 г.
Выпущены androidx.xr.runtime:runtime:1.0.0-alpha02
, androidx.xr.runtime:runtime-openxr:1.0.0-alpha02
и androidx.xr.runtime:runtime-testing:1.0.0-alpha02
. Версия 1.0.0-alpha02 содержит эти коммиты .
Нарушения и поведенческие изменения
- Функции времени выполнения
OpenXR
, возвращающие Anchor, теперь выдают исключениеAnchorResourcesExhaustedException
, если они сталкиваются с кодом ошибки, уведомляющим о достижении предела ресурсовOpenXR
. - Разрешение
android.permission.HAND_TRACKING
теперь требуется дляSession.create
иSession.resume
.
Новые функции
- Добавлена поддержка отслеживания рук.
Исправления ошибок
- Создание якорей становится более стабильным при запуске на эмуляторе.
Версия 1.0.0-альфа01
12 декабря 2024 г.
Выпущен androidx.xr.runtime:runtime-* 1.0.0-alpha01
.
Особенности первоначального выпуска
Первый выпуск Jetpack XR Runtime. Эта библиотека содержит основные функции для набора библиотек Jetpack XR. Сюда входят обнаружение возможностей, управление жизненным циклом, настройка и многое другое. Библиотека Runtime предоставляет различные варианты (например, runtime-openxr
или runtime-testing
) в зависимости от платформы выполнения. Кроме того, эта библиотека предлагает фундаментальные математические абстракции, такие как Vector3
и Matrix4
, которые используются во всем API Jetpack XR.
Session
: предоставляет вам детальное управление системой XR, включая определение времени выполнения обработки и её полной конфигурации. Кроме того, это идентификатор, который вы будете использовать во всех остальных API для доступа к базовым возможностям системы.Pose
: местоположение в произвольной системе координат, с которым связаны положение и ориентация. Этот класс будет использоваться для передачи местоположения объектов в ARCore для Jetpack XR и Jetpack SceneCore.
Известные проблемы
-
configure
в настоящее время неактивна. В будущих версиях будут добавлены новые параметры, которые можно будет использовать для управления поведениемSession
.
Контент и образцы кода на этой странице предоставлены по лицензиям. Java и OpenJDK – это зарегистрированные товарные знаки корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2025-07-30 UTC.