Thời gian chạy XR

Bắt đầu phiên thực tế tăng cường hoặc 3D tuỳ chỉnh bằng thời gian chạy gốc của chúng tôi.
Bản cập nhật mới nhất Bản phát hành ổn định Bản phát hành dùng thử Bản phát hành beta Bản phát hành alpha
Ngày 30 tháng 7 năm 2025 - - - 1.0.0-alpha05

Khai báo phần phụ thuộc

Để thêm một phần phụ thuộc vào thời gian chạy XR, bạn phải thêm kho lưu trữ Google Maven vào dự án. Đọc nội dung Kho lưu trữ Maven của Google để biết thêm thông tin.

Thêm các phần phụ thuộc cho cấu phần phần mềm bạn cần trong tệp build.gradle cho ứng dụng hoặc mô-đun:

Groovy

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"
}

Kotlin

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")
}

Để biết thêm thông tin về các phần phụ thuộc, hãy xem bài viết Thêm phần phụ thuộc vào bản dựng.

Ý kiến phản hồi

Ý kiến phản hồi của bạn có thể giúp chúng tôi cải thiện Jetpack. Hãy cho chúng tôi biết nếu bạn phát hiện lỗi mới hoặc có ý tưởng cải thiện thư viện này. Vui lòng xem các lỗi hiện có trong thư viện này trước khi báo một lỗi mới. Bạn có thể thêm lượt bình chọn cho lỗi hiện có bằng cách nhấp vào nút dấu sao.

Báo lỗi mới

Xem tài liệu về Công cụ theo dõi lỗi để biết thêm thông tin.

Phiên bản 1.0

Phiên bản 1.0.0-alpha05

Ngày 30 tháng 7 năm 2025

Phát hành androidx.xr.runtime:runtime-*:1.0.0-alpha05. Phiên bản 1.0.0-alpha05 bao gồm các thay đổi sau.

Tính năng mới

  • Thêm HandJointTypeTrackingState. (I55880, b/334645808)
  • Đặt chế độ triển khai Cấu hình ở chế độ công khai. (I95860, b/334645808)
  • Ra mắt các loại SessionCreateResultSessionConfigureResult mới. (Icb8cb, b/334645808)
  • Thêm một lớp BoundingBox mới biểu thị một hộp giới hạn căn chỉnh theo trục trong không gian 3D, được xác định bằng các điểm góc tối thiểu và tối đa. (Ic68c5, b/423073468)

Thay đổi về API

  • Đổi tên và di chuyển androidx.xr.scenecore.PixelDimensions thành androidx.xr.runtime.math.IntSize2d. Đổi tên và di chuyển androidx.xr.scenecore.Dimensions thành androidx.xr.runtime.math.FloatSize3d. Đổi tên androidx.xr.scenecore.PlaneType thành androidx.xr.scenecore.PlaneOrientation. Đổi tên androidx.xr.scenecore.PlaneSemantic thành androidx.xr.scenecore.PlaneSemanticType. (Ifd405, b/416456228)
  • Xoá lớp androidx.xr.runtime.FoV. Thay vào đó, hãy sử dụng androidx.xr.runtime.FieldOfView. (I9ae27)
  • Thêm một phương thức nạp chồng khác cho Session.create. Phương thức này có thể cung cấp một LifecycleOwner để Phiên kết nối. Xin lưu ý rằng bạn vẫn cần cung cấp một Hoạt động để sở hữu tài nguyên và LifecycleOwner phải được đặt trong phạm vi của Hoạt động. (I1690b)
  • Đổi tên FakeRuntimeAnchor.anchorsCreated thành anchorsCreatedCount (I96df9, b/424441218)
  • Các giá trị *Mode trong cấu hình đã được đổi tên để phản ánh hành vi của các giá trị đó. (I6d247, b/414648065)
  • Các dự án được phát hành bằng Kotlin 2.0 yêu cầu sử dụng KGP 2.0.0 trở lên (Idb6b5, b/344563182)
  • Các API liên quan đến chuỗi tệp kê khai đã được di chuyển từ :xr:runtime:runtime sang :xr:runtime:runtime-manifest. Tên gói đã thay đổi từ androidx.xr.runtime thành androidx.xr.runtime.manifest. (I610ad, b/418800249)
  • Session.resume(), Session.pause()Session.destroy() đã bị xoá khỏi nền tảng API. Phiên không còn là LifecycleOwner nữa. Vòng đời của Phiên hiện sẽ được đính kèm vào vòng đời của Hoạt động được truyền trong Session.create(). (I28a03)
  • Thư viện này hiện sử dụng chú giải về giá trị rỗng JSpecify, là loại sử dụng. Nhà phát triển Kotlin nên sử dụng đối số trình biên dịch sau đây để thực thi cách sử dụng chính xác: -Xjspecify-annotations=strict (đây là trạng thái ban đầu mặc định bắt đầu từ phiên bản 2.1.0 của trình biên dịch Kotlin) (Ia8420, b/326456246)
  • Cấu phần phần mềm Thời gian chạy chính (:xr:runtime:runtime) sẽ chỉ chứa các API không đồng bộ theo kiểu Kolin. Nhà phát triển Java có thể dựa vào :xr:runtime:runtime-guava để truy cập vào các API tương thích. (I05d4a, b/426639315)
  • Cấu phần phần mềm Thời gian chạy chính (:xr:runtime:runtime) sẽ chỉ chứa các API không đồng bộ theo kiểu Kotlin. Nhà phát triển Java có thể dựa vào thư viện xr:runtime:runtime-rxjava3 để truy cập vào các API tương thích. (I64122, b/426639775)
  • Di chuyển Coroutine sang :xr:runtime:runtime-guava và Luồng sang :xr:runtime:runtime-rxjava3. (I60ae9)
  • Session.createSession.configure hiện gửi SecurityException khi chưa được cấp đủ quyền thay vì trả về SessionCreatePermissionsNotGranted hoặc SessionConfigurePermissionsNotGranted. (I7c488, b/430651879)

Phiên bản 1.0.0-alpha04

Ngày 7 tháng 5 năm 2025

Phát hành androidx.xr.runtime:runtime:1.0.0-alpha04, androidx.xr.runtime:runtime-openxr:1.0.0-alpha04androidx.xr.runtime:runtime-testing:1.0.0-alpha04. Phiên bản 1.0.0-alpha04 bao gồm các thay đổi sau.

Tính năng mới

  • Giờ đây, phiên này triển khai androidx.lifecycle.LifecycleOwner để tăng khả năng tương tác với các mô hình vòng đời hiện có của Android.
  • Các chuỗi tệp kê khai cho Android XR được chỉ định và ghi lại tại đây.
  • Các phương thức mở rộng Spatial Visibility Callback (Lệnh gọi lại khả năng hiển thị không gian) được thêm vào để theo dõi thời điểm nội dung cảnh di chuyển vào hoặc ra khỏi tầm nhìn của người dùng.
  • Đã thêm một phiên bản gốc của JxrPlatformAdapter (và tất cả các lớp có liên quan).
  • Phiên sẽ được dùng trong cả SceneCore và Thời gian chạy thay vì Phiên trong SceneCore.
  • ActivityPose.hitTest đã được thêm, cho phép hitTest chống lại nội dung ảo.
  • Giờ đây, bạn có thể chỉ định nhiều cách triển khai Runtime tại thời gian biên dịch. Chỉ một trong số đó sẽ được tải tại thời gian thực thi dựa trên bộ tính năng của thiết bị hiện tại.
  • Thêm loại Thành phần mới SpatialPointerComponent, cho phép các ứng dụng chỉ định biểu tượng được kết xuất cho con trỏ hoặc tắt biểu tượng. Hiện tại, bạn chỉ có thể đính kèm Thành phần này vào các thực thể PanelEntity.

Thay đổi về API

  • Đặt chế độ triển khai Cấu hình ở chế độ công khai. (I95860)
  • Thêm HandJointTypeTrackingState. (I55880)
  • Các dự án được phát hành bằng Kotlin 2.0 yêu cầu sử dụng KGP 2.0.0 trở lên (Idb6b5)
  • Hand.isActive (boolean) đã được thay đổi thành Hand.trackingState. Cách triển khai OpenXR đã được sửa đổi cho phù hợp.
  • Yêu cầu về quyền android.permission.SCENE_UNDERSTANDING trong Session.configure đã được thay đổi thành android.permission.SCENE_UNDERSTANDING_COARSE.
  • LifecycleManager.configure được triển khai và hiện truyền vào một đối tượng Config chứa một thuộc tính cho từng tính năng có thể định cấu hình trong thời gian chạy.
  • Giờ đây, bạn có thể gọi Session.configure bằng Config để định cấu hình các tính năng có sẵn trong thời gian chạy.
  • Session.create hiện hỗ trợ truyền CoroutineContext thay vì CoroutineDispatcher.
  • Session.create hỗ trợ tải ARCore cho Jetpack XR và/hoặc SceneCore. Bạn phải cung cấp ít nhất một phiên bản (có sẵn phiên bản thử nghiệm).
  • FakePerceptionManager gửi một AnchorInvalidUuidException khi một UUID không hợp lệ được truyền đến Anchor.loadAnchor.unpersist.
  • CoreState không còn là một lớp dữ liệu nữa.

Sửa lỗi

  • Đã sửa cấu hình proguard thời gian chạy.

Phiên bản 1.0.0-alpha03

Ngày 26 tháng 2 năm 2025

Phát hành androidx.xr.runtime:runtime:1.0.0-alpha03, androidx.xr.runtime:runtime-openxr:1.0.0-alpha03androidx.xr.runtime:runtime-testing:1.0.0-alpha03 mà không có thay đổi đáng kể nào kể từ phiên bản alpha gần đây nhất. Phiên bản 1.0.0-alpha03 bao gồm các thay đổi sau.

Phiên bản 1.0.0-alpha02

Ngày 12 tháng 2 năm 2025

Phát hành androidx.xr.runtime:runtime:1.0.0-alpha02, androidx.xr.runtime:runtime-openxr:1.0.0-alpha02androidx.xr.runtime:runtime-testing:1.0.0-alpha02. Phiên bản 1.0.0-alpha02 bao gồm các thay đổi sau.

Thay đổi có thể gây lỗi và thay đổi về hành vi

  • Các hàm thời gian chạy OpenXR trả về một Anchor hiện sẽ gửi AnchorResourcesExhaustedException nếu gặp mã lỗi thông báo rằng đã đạt đến giới hạn tài nguyên OpenXR.
  • Giờ đây, bạn bắt buộc phải có quyền android.permission.HAND_TRACKING đối với Session.createSession.resume.

Tính năng mới

  • Thêm tính năng hỗ trợ theo dõi cử chỉ tay.

Sửa lỗi

  • Việc tạo điểm neo sẽ ổn định hơn khi chạy trên trình mô phỏng

Phiên bản 1.0.0-alpha01

Ngày 12 tháng 12 năm 2024

Phát hành androidx.xr.runtime:runtime-* 1.0.0-alpha01.

Các tính năng của bản phát hành ban đầu

Bản phát hành đầu tiên của Jetpack XR Runtime. Thư viện này chứa các phần chức năng cơ bản cho bộ thư viện Jetpack XR. Điều này bao gồm khả năng khám phá, quản lý vòng đời, cấu hình và nhiều tính năng khác. Thư viện Thời gian chạy cung cấp nhiều biến thể (ví dụ: runtime-openxr hoặc runtime-testing) tuỳ thuộc vào nền tảng thực thi. Ngoài ra, thư viện này còn cung cấp các thành phần trừu tượng toán học cơ bản như Vector3Matrix4 được dùng trên toàn bộ bề mặt API Jetpack XR.

  • Session: Cung cấp cho bạn các chế độ kiểm soát chi tiết đối với hệ thống XR, bao gồm cả việc quyết định thời điểm xử lý và không xử lý cũng như cấu hình tổng thể. Đây cũng là đối tượng mà bạn sẽ sử dụng trên tất cả các API khác để mở khoá các chức năng hệ thống cơ bản.

  • Pose: Một vị trí trong hệ toạ độ tuỳ ý có vị trí và hướng liên kết với vị trí đó. Bạn sẽ dùng lớp này để truyền đạt vị trí của các đối tượng bằng ARCore cho Jetpack XR và Jetpack SceneCore.

Lỗi đã biết

  • configure hiện không hoạt động. Các bản phát hành trong tương lai sẽ bổ sung các chế độ cài đặt mới mà bạn có thể dùng để kiểm soát hành vi của Session.