ARCore cho Jetpack XR

Đưa nội dung kỹ thuật số vào thế giới thực bằng các chức năng nhận thức.
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 21 tháng 10 năm 2026 1.0.0 - - 1.1.0-alpha01

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

Để thêm phần phụ thuộc trên ARCore cho Jetpack 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.arcore:arcore:1.1.0-alpha01"
}

Kotlin

dependencies {
    implementation("androidx.xr.arcore:arcore:1.1.0-alpha01")
}

Để 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ề Trình theo dõi sự cố để biết thêm thông tin.

Phiên bản 1.1

Phiên bản 1.1.0-alpha01

Ngày 21 tháng 10 năm 2026

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

Thay đổi về API

  • Ra mắt API SpatialAnnotation để theo dõi các đối tượng và hình học vật lý 3D. Thêm SpatialAnnotationTrackingOptions và mẫu trình tạo tương ứng để định cấu hình tính năng theo dõi không gian thông qua vùng đệm hình ảnh của camera. (I918ce)
  • Ra mắt SpatialAnnotation và SpatialAnnotationTrackingMode cho Jetpack XR ARCore, cho phép nhà phát triển định cấu hình và theo dõi các hình học tứ giác 3D có giới hạn tuỳ ý (Quad) nhắm đến môi trường không gian thực tế. (I880e4)
  • Thêm TestSpatialAnnotation để cho phép mô phỏng có lập trình các chú thích không gian trong kiểm thử tự động. (If2335)
  • Thêm geospatialPose, horizontalAccuracy, verticalAccuracy và orientationYawAccuracy làm API mới để cung cấp thêm thông tin về trạng thái Không gian địa lý. (If28f8)

Sửa lỗi

  • Phần phụ thuộc androidx.lifecycle:lifecycle-runtime đã được cập nhật lên phiên bản 2.10.0. Bạn cần có phiên bản này để chạy các quy trình kiểm tra tìm lỗi mã nguồn trong thời gian chạy của vòng đời đi kèm với AGP phiên bản 9.5.0-alpha04 trở lên. (I99bfd, b/556807521)
  • Đã kiểm tra số lượng hình ảnh tối đa là 0 khi định cấu hình AugmentedImage, gửi UnsupportedOperationException thay vì không thành công ngoài dự kiến. I6ce439
  • Khắc phục lỗi rò rỉ bộ nhớ và các vấn đề về tính đồng thời trong AugmentedImageRenderer bằng cách theo dõi và huỷ các công việc kết xuất một cách chính xác, loại bỏ các thực thể và sửa đổi tập hợp hình ảnh một cách an toàn. Ie70760

Phiên bản 1.0

Phiên bản 1.0.0

Ngày 21 tháng 10 năm 2026

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

Các tính năng chính của phiên bản 1.0.0:

  • ARCore cho Jetpack XR hiện đã ổn định! Thư viện ARCore cho Jetpack XR cung cấp các chức năng để kết hợp nội dung kỹ thuật số với thế giới thực. Thư viện này bao gồm tính năng theo dõi chuyển động, neo cố định, thử nghiệm nhấn, nhận dạng mặt phẳng bằng nhãn ngữ nghĩa (ví dụ: sàn, tường và mặt bàn) và Tư thế không gian địa lý bằng Hệ thống định vị trực quan của Google.
  • Để biết thêm thông tin, hãy xem hướng dẫn cho nhà phát triển và Tài liệu tham khảo API của chúng tôi.

Phiên bản 1.0.0-rc02

Ngày 7 tháng 10 năm 2026

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

Sửa lỗi

  • Khắc phục vấn đề OpenXrRuntime không định cấu hình được phiên khi tính năng theo dõi hình ảnh tăng cường không được hỗ trợ. (I8b9759)
  • Khắc phục nhiều vấn đề, bao gồm: cải thiện khả năng quản lý bộ nhớ trong XrInstanceManager bằng cách sử dụng applicationContext, giải quyết các vấn đề tiềm ẩn liên quan đến vòng đời bằng cách đơn giản hoá cơ chế lưu vào bộ nhớ đệm Session và Scene, đồng thời cải thiện ReferenceCleaner để đảm bảo việc đăng ký dọn dẹp an toàn cho luồng và xử lý rõ ràng. (Id0b76c)

Phiên bản 1.0.0-rc01

Ngày 9 tháng 9 năm 2026

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

Phiên bản 1.0.0-beta02

Ngày 12 tháng 8 năm 2026

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

Sửa lỗi

  • Khắc phục vấn đề đồng thời trong tính năng duy trì điểm neo OpenXR. (I15c8b)
  • Triển khai toString() trong nhiều lớp hơn để gỡ lỗi. (I587e8)

Phiên bản 1.0.0-beta01

Ngày 15 tháng 7 năm 2026

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

Thay đổi về API

  • Cập nhật đối tượng sửa đổi có thể đổi kích thước để sử dụng một ResizePolicy thay vì hai đối tượng sửa đổi (I7fb0f, b/496257436, b/519672992)
  • Thêm phương thức nạp chồng có thể di chuyển bằng tham số movePolicy và ngừng sử dụng transformingMovable và movable (Ic88c1, b/481781189)
  • Đã xóa TrackingState.TRACKING_DEGRADED khỏi nền tảng API công khai và thay vào đó, liên kết các trạng thái xuống cấp trong thời gian chạy với PAUSED. Cập nhật TrackingState để sử dụng enum thay vì giá trị int cho lượt chuyển đổi chuỗi và lượt chuyển đổi thời gian chạy. (I3eb5b, b/524326338)
  • Chuyển đổi Session.create thành hàm tạm ngưng. (I5d27f)
  • Ngừng sử dụng ProjectedPermissionsResultContract (I141d5, b/515699436)
  • Cập nhật AnchorEntity thành AnchorSpace (Ifa95e, b/513619219)

Phiên bản 1.0.0-alpha15

Ngày 17 tháng 6 năm 2026

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

Thay đổi về API

  • Xoá HitResult.createAnchor. Nhà phát triển có thể tạo một neo đại diện cho HitResult nếu đối tượng có thể theo dõi của kết quả là Anchorable bằng cách cung cấp vị trí nhấn cho hàm createAnchor của Anchorable. (Ia851e)
  • Xoá AnchorUnsupportedObject. Lỗi này không còn được gửi bởi thời gian chạy JXR ARCore. (Ia851e)
  • androidx.xr.arcore.Anchor và androidx.xr.arcore.ArDevice hiện triển khai androidx.xr.arcore.Trackable. (I57b65)
  • Depth.left, Depth.right và Depth.mono hiện không rỗng (I1fc5e)
  • Face.getUserFace hiện không thể nhận giá trị rỗng (I0eac1)
  • (Icf7fa) RenderViewpoint.left, RenderViewpoint.right, RenderViewpoint.mono hiện không rỗng
  • Hand.left và Hand.right không rỗng (Icef37)
  • Thêm API QrCode (Ia0bbe)

Phiên bản 1.0.0-alpha14

Ngày 19 tháng 5 năm 2026

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

Thay đổi về API

  • Ngừng sử dụng GeospatialMode.VPS_AND_GPS để chuyển sang GeospatialMode.SPATIAL và giới thiệu chế độ theo dõi mới tiêu thụ ít điện năng hơn, GeospatialMode.INERTIAL, chỉ sử dụng IMU và GPS. (I1e6cd)
  • Các lớp ngoại lệ neo tuỳ chỉnh: AnchorInvalidUuidException, AnchorNotAuthorizedException, AnchorUnsupportedLocationException, AnchorRuntimeFailureException và AnchorUnsupportedObjectException hiện là các thực thể RuntimeException, không dùng để kiểm tra. (I9356e)
  • Thêm API ArCoreTestRule, bao gồm TestArDevice, TestAugmentableObject, TestDepthMap, TestEye, TestFace, TestGeospatial, TestHand, TestPlane, TestRenderViewpoint và TestTrackable (I0ad3c)
  • Xoá AnchorLoadInvalidUuid, AnchorCreateUnsupportedObject, AnchorCreateUnsupportedLocation và AnchorCreateNotAuthorized. Tất cả các lỗi này hiện là ngoại lệ trong thời gian chạy. Xoá AnchorCreateIllegalState. Trong hầu hết các trường hợp, AnchorCreateTrackingUnavailable đã thay thế cho tính năng này. Thêm AnchorException và các lớp dẫn xuất AnchorInvalidUuidException, AnchorNotAuthorizedException, AnchorUnsupportedLocationException, AnchorRuntimeFailureException và AnchorUnsupportedObjectException. (I4c4dd)

Đóng góp bên ngoài

  • Thêm API AugmentedImage để theo dõi điểm đánh dấu tuỳ chỉnh (I0cf09)

Phiên bản 1.0.0-alpha13

Ngày 6 tháng 5 năm 2026

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

Thay đổi về API

  • TrackingState và VpsAvailabilityResult đã chuyển sang androidx.xr.arcore package và các loại trong androidx.xr.runtime hiện không còn được dùng nữa. (Ic7930, b/480462213)
  • Đổi tên Plane.Type thành PlaneType. (I8c90c, b/482675376)
  • Đổi tên Hand.HandSide thành HandSide. (Ica562, b/482675376)
  • Đổi tên Plane.Label thành PlaneLabel. (Ic6b67, b/482675376)
  • Đổi tên Geospatial.Surface thành GeospatialSurface. (I1a8be, b/482675376)
  • Đổi tên Geospatial.State thành GeospatialState. (I203fa, b/482675376)
  • Đã di chuyển API NativeData sang thư viện xr:runtime:runtime. (I87954, b/494251500)
  • Session.create và Session.configure hiện không đầy đủ và yêu cầu mệnh đề else trong câu lệnh when. (I9885e, b/495805998, b/495805998)
  • Ngừng sử dụng androidx.xr.runtime.FieldOfView. Sử dụng androidx.xr.runtime.math.FieldOfView. (Ia01a0, b/480233045)
  • Thay đổi Orbiter để sử dụng OrbiterAnchorPoint + VolumeOffset hoặc OrbiterPoseProvider thay vì vị trí, độ dời, offsetType, căn chỉnh và độ cao. Đồng thời, xoá tham số shouldRenderInNonSpatial. Nếu không muốn trình kết xuất quỹ đạo ở chế độ không gian, nhà phát triển nên gói quỹ đạo trong một câu lệnh if và kiểm tra SpatialCapabilities. (I9fbb3, b/462428503)
  • Thêm đối tượng sửa đổi có thể di chuyển. Các đối tượng sửa đổi này hiện hoạt động tốt cho SpatialPanels và SpatialExternalSurface. Rất sớm thôi, các tính năng này cũng sẽ được hỗ trợ cho SpatialGltfModels. Tuy nhiên, mục đích là để hỗ trợ tốt cho tất cả SubspaceComposables. (I9a3cd, b/479530787, b/478935063, b/478935063)
  • Nhà phát triển nên quan sát ArDevice.state Flow để theo dõi State.trackingState và điều chỉnh hoạt động kết xuất hoặc cảnh báo của ứng dụng cho phù hợp dựa trên độ chân thực của hoạt động theo dõi. (Ic00f0, b/445466590)
  • Đổi tên các giá trị enum HandJointType. (Ifbc83, b/482670596)
  • Đổi tên hằng số FaceConfidenceRegion. (Ia62d5, b/482670596)
  • Đổi tên hằng số FaceBlendShapeType. (I33b8b, b/482670596)
  • Thêm CreatePoseFromGeospatialPoseErrorInternal và CreateGeospatialPoseFromPoseErrorInternal. (I4bcf1, b/482666615)
  • Đổi tên DeviceTrackingMode.LAST_KNOWN thành SPATIAL_LAST_KNOWN (với tính năng dự phòng không dùng nữa), thêm INERTIAL_LAST_KNOWN để theo dõi 3DoF và thêm TRACKING_DEGRADED vào TrackingState. (Ie661c, b/445466590)
  • Ngừng sử dụng GroupEntity. Để có một Thực thể chỉ có chức năng Thực thể cơ bản, hãy gọi Entity.create để trả về giao diện Thực thể. (I4c450, b/473867483)
  • Thêm API XrLog. Đặt XrLog.isEnabledthành true để bật tính năng ghi nhật ký trong JetpackXR và sử dụng XrLog.Level để đặt cấp độ ghi nhật ký. (I76a1f, b/463460895, b/487378441)

Sửa lỗi

  • Thêm tính năng hỗ trợ trạng thái theo dõi thiết bị vào các thiết bị openxr. (I91485, b/445466590)

Phiên bản 1.0.0-alpha12

Ngày 25 tháng 3 năm 2026

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

Thay đổi về API

  • Đã thay đổi Config.augmentedObjectCategories từ List thành Set. (I25a64, b/487376359)
  • Các loại androidx.xr.arcore.Eye và androidx.xr.arcore.Hand. (I42438, b/449032900)
  • Thêm phương thức nạp chồng Session.create để cho phép truyền một Android Context cho phạm vi tài nguyên. (I7d3fe, b/415805990, b/477386334)
  • Thay đổi FakeRuntimeAnchor.ANCHOR_RESOURCE_LIMIT thành FakeRuntimeAnchor.anchorResourceLimit. (I90841, b/431992235)
  • Đặt API TiltGesture ở trạng thái thử nghiệm vì API này có thể thay đổi hoặc bị xoá trong tương lai. Để sử dụng API này, hãy chọn sử dụng @ExperimentalGesturesApi (Ic9858)
  • Thêm khả năng đặt danh mục cho tính năng theo dõi AugmentedObject trong Cấu hình (I1f6e4, b/480220930)

Sửa lỗi

  • Sửa bản dựng của Chrome bằng cách cập nhật tệp META-INF/services/ với vị trí thực tế của PerceptionRuntimeFactory. (I7a801, b/481288291)

Phiên bản 1.0.0-alpha11

Ngày 25 tháng 2 năm 2026

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

Phiên bản 1.0.0-alpha10

Ngày 28 tháng 1 năm 2026

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

Tính năng mới

  • Ra mắt API TiltGesture, cung cấp Flow phản ứng để phát hiện ổn định trạng thái nghiêng của thiết bị (LÊN/XUỐNG) cùng với tiến trình chuyển đổi. (Ic269f, b/448152779)
  • ARCore cho Jetpack XR hiện sử dụng cơ chế Ghi nhật ký thời gian chạy XR. Vui lòng xem androidx.xr.runtime.Log để biết thêm thông tin. (l52735, b/448697662)

Thay đổi về API

  • Geospatial.createPoseFromGeospatialPose hiện hoạt động trên các thiết bị hỗ trợ OpenXR. (l362c6)

Phiên bản 1.0.0-alpha09

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

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

Phiên bản 1.0.0-alpha08

Ngày 19 tháng 11 năm 2025

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

Tính năng mới

  • ARCore cho Jetpack XR hiện hỗ trợ các thiết bị có Dịch vụ Google Play cho Thực tế tăng cường.
  • Thêm API không gian địa lý cho tính năng Chuyển đổi tư thế và Khả năng sử dụng VPS (I144dc)

Phiên bản 1.0.0-alpha07

Ngày 22 tháng 10 năm 2025

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

Sửa lỗi

  • :xr:arcore:arcore-openxr được thêm dưới dạng phần phụ thuộc triển khai vào :xr:arcore:arcore (I47315, b/446999229)

Phiên bản 1.0.0-alpha06

Ngày 24 tháng 9 năm 2025

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

Thay đổi về API

  • Tính năng hỗ trợ kiểm thử cho ARCore đã di chuyển sang mô-đun xr:arcore:arcore-testing. (I25469)
  • Thêm ArDevice và RenderViewpoint để cho phép các ứng dụng truy xuất tư thế và cấu hình hiển thị của thiết bị cho mục đích kết xuất. (Ib7e3f)
  • Đổi tên enum HandJointType bằng tiền tố HAND_JOINT_TYPE_. (I3f7cd)
  • HandJointType đã được chuyển đến xr:arcore:arcore từ xr:runtime:runtime. (Iadb9c, b/409058039)
  • Hand.State hiện hiển thị java.nio.FloatBuffer với các tư thế khớp ở định dạng cho phép dễ dàng truy cập vào các ứng dụng hướng đến hiệu suất. (I55e27)

Phiên bản 1.0.0-alpha05

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

Phát hành androidx.xr.arcore:arcore:1.0.0-alpha05, androidx.xr.arcore:arcore-guava:1.0.0-alpha05 và androidx.xr.arcore:arcore-rxjava3: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 getPrimaryHandSide để nhà phát triển có thể lấy thông tin về phía tay (I270bd)
  • Thêm API kiểm tra không gian địa lý về tình trạng sẵn có của VPS (I58573)
  • Thêm API ARCore cho checkVpsAvailability (Idbded)
  • Đã thêm các hàm mở rộng stateFlowable vào :xr:arcore:arcore-rxjava3 để nhà phát triển Java sử dụng. (I083aa, b/427247794)

Thay đổi về API

  • Các giá trị *Mode của cấu hình đã được đổi tên để phản ánh hành vi của chúng. (I6d247, b/414648065)
  • Cấu phần phần mềm ARCore chính (xr:arcore:arcore) sẽ chỉ chứa các API không đồng bộ kiểu Kotlin. Nhà phát triển Java có thể dựa vào thư viện xr:arcore:arcore-rxjava3 để truy cập vào các API tương thích. (Ia525e, b/422794329)
  • Cấu phần phần mềm ARCore chính (xr:scenecore:scenecore) sẽ chỉ chứa các API không đồng bộ kiểu Kotlin. Nhà phát triển Java có thể dựa vào thư viện xr:arcore:arcore-guava để truy cập vào các API tương thích. (Iffcb4, b/422773524)
  • Anchor.persistAsync() được thêm vào AnchorGuava để nhà phát triển Java sử dụng. (I4af1c, b/425984631)
  • Earth.createAnchorOnSurfaceAsync(Session, Double, Double, Double, Quaternion, Surface) được thêm vào EarthGuava để nhà phát triển Java sử dụng. (I66357, b/425992992)
  • Nhà phát triển Java sẽ sử dụng các hàm mở rộng cho GltfModel.createAsync trong GltfModel.kt. Các hàm không đồng bộ trong GltfModel sẽ bị xoá. (I0af60)
  • Thư viện này hiện sử dụng chú thích rỗng JSpecify, là chú thích sử dụng kiểu. Nhà phát triển Kotlin nên sử dụng đối số trình biên dịch sau để thực thi cách sử dụng chính xác: -Xjspecify-annotations=strict (đây là đối số 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)
  • Đã thêm các hàm mở rộng subscribeAsFlowable vào :xr:arcore:arcore-rxjava3 để nhà phát triển Java sử dụng. (Id3e49, b/427277298)

Phiên bản 1.0.0-alpha04

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

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

Thay đổi về API

  • Các dự án được phát hành bằng Kotlin 2.0 cần có KGP 2.0.0 trở lên để sử dụng. (Idb6b5)
  • TrackingState và HandJointType đã được chuyển từ ARCore sang Thời gian chạy.
  • Hand.State.isActive (boolean) đã được đổi thành Hand.State.trackingState (androidx.xr.runtime.TrackingState).
  • Anchor.load trả về Anchor.AnchorLoadInvalidUuid nếu UUID không hợp lệ.

Phiên bản 1.0.0-alpha03

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

androidx.xr.arcore:arcore:1.0.0-alpha03 được phát hành mà không có thay đổi đáng kể nào kể từ bản phát hành 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.arcore:arcore:1.0.0-alpha02. Phiên bản 1.0.0-alpha02 bao gồm các thay đổi sau.

Tính năng mới

  • Thêm tính năng hỗ trợ theo dõi cử động của tay. Sử dụng Hand.left và Hand.right để truy cập vào thông tin theo dõi.
  • Các API tạo điểm neo (Anchor.create, Anchor.load, Plane.createAnchor) hiện đều trả về AnchorCreateResult và triển khai AnchorCreateResourcesExhausted đúng cách.

Bản sửa lỗi

  • Anchor.detach không còn gây ra sự cố nghiêm trọng do tình huống tương tranh với luồng cập nhật Phiên.
  • Anchor.create ổ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.arcore:arcore-* 1.0.0-alpha01.

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

Lấy cảm hứng từ thư viện ARCore hiện có, thư viện ARCore cho Jetpack XR cung cấp các chức năng để kết hợp nội dung kỹ thuật số với thế giới thực. Thư viện này bao gồm tính năng theo dõi chuyển động, neo cố định, thử nghiệm nhấn và nhận dạng mặt phẳng bằng nhãn ngữ nghĩa (ví dụ: sàn, tường và mặt bàn). Xem hướng dẫn cho nhà phát triển để tìm hiểu thêm về cách làm việc với ARCore cho Jetpack XR.

  • Session: ARCore cho Jetpack XR sử dụng Jetpack XR Runtime nâng cao để hỗ trợ chức năng của nó. Bạn sẽ sử dụng một Phiên để tương tác với hầu hết các API ARCore cho Jetpack XR, vì vậy, vui lòng xem tài liệu về phiên đó.

  • Plane: Sử dụng mặt phẳng để hiểu thế giới xung quanh bạn. Mỗi mặt phẳng có một Label mô tả mặt phẳng đó về mặt ngữ nghĩa. Bạn có thể sử dụng subscribe để nhận thông báo về các mặt phẳng mới nhất được phát hiện hoặc state để nhận thông báo về các thay đổi đối với một mặt phẳng cụ thể.

  • Anchor: Liên kết giữa một đối tượng ảo và một vị trí trong thế giới thực. Bạn có thể đính kèm neo vào một vị trí cụ thể trong không gian (bằng cách sử dụng create) hoặc Trackable (bằng cách sử dụng createAnchor).

    • Bạn có thể sử dụng lại điểm neo trong nhiều phiên. Bạn có thể sử dụng persist để lưu trữ, getPersistedAnchorUuids để liệt kê và load để truy xuất các khoá này. Hãy nhớ unpersist các khoá này khi không còn sử dụng nữa.

    • Điểm neo có thể tương tác giữa ARCore cho Jetpack XR và Jetpack SceneCore. Bạn có thể tạo AnchorEntity bằng một neo hoặc nếu có AnchorEntity hiện có, bạn có thể sử dụng getAnchor để truy xuất neo hỗ trợ của neo đó.

    • Cung cấp các hoạt động tương tác tự nhiên cho người dùng bằng hitTest. hitTest sử dụng Ray để xác định nội dung mà nó giao nhau và tạo Anchor từ vị trí đó. Cân nhắc tiến hành hitTest từ InputEvent.

Lỗi đã biết

  • Có thể có độ trễ giữa thời điểm gọi unpersist và thời điểm UUID của nó bị xoá khỏi kết quả do getPersistedAnchorUuids trả về.

  • create sẽ không xác thực rằng hệ thống có đủ tài nguyên để trả về các neo mới. Việc tạo quá nhiều neo có thể dẫn đến sự cố.

  • Hiện không hỗ trợ việc duy trì một Điểm neo đã được duy trì và huỷ duy trì trước đó.

  • Bạn có thể sử dụng trong trình mô phỏng, nhưng hành vi có thể không ổn định như khi chạy trên thiết bị thực tế. Cụ thể, các lệnh gọi đến create có thể không thành công do lỗi mã gốc và ngay lập tức chấm dứt hoạt động.

  • Trong một số trường hợp, RuntimeException có thể bị gửi nhầm khi gọi persist kèm theo thông báo "Anchor was not persisted" (Điểm neo không được duy trì). Trong những trường hợp đó, hàm vẫn sẽ thành công và điểm neo sẽ được duy trì. Bạn nên gói lệnh gọi đến persist bằng một khối try để khắc phục vấn đề này.