{ } { }
Jetpack SceneCore
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 12 tháng 12 năm 2024 | - | - | - | 1.0.0-alpha01 |
Khai báo phần phụ thuộc
Để thêm một phần phụ thuộc trên XR SceneCore, 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.scenecore:scenecore:1.0.0-alpha01" // Required for Java implementation "com.google.guava:listenableFuture:1.0" // Required for Kotlin implementation "org.jetbrains.kotlinx:kotlinx-coroutines-guava:1.9.0" // Use to write unit tests testImplementation "androidx.xr.scenecore:scenecore-testing:1.0.0-alpha01" }
Kotlin
dependencies { implementation("androidx.xr.scenecore:scenecore:1.0.0-alpha01") // Required for Java implementation("com.google.guava:listenableFuture:1.0") // Required for Kotlin implementation("org.jetbrains.kotlinx:kotlinx-coroutines-guava:1.9.0") // Use to write unit tests testImplementation("androidx.xr.scenecore:scenecore-testing:1.0.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.
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-alpha01
Ngày 12 tháng 12 năm 2024
Phát hành androidx.xr.scenecore:scenecore-* 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 ban đầu dành cho nhà phát triển của Jetpack SceneCore, một thư viện biểu đồ cảnh 3D để tạo và thao tác với các cảnh và môi trường sống động. Thư viện này cho phép bạn đặt và sắp xếp các mô hình 3D và bảng nội dung tương ứng với nhau cũng như môi trường ảo hoặc thực tế của bạn.
- SpatialEnvironment: Tạo trải nghiệm sống động bằng hình ảnh hộp bầu trời và/hoặc hình học mô hình 3D làm phông nền cho cảnh XR của môi trường. Hoặc bật tính năng truyền để cảnh ảo của bạn có thể tích hợp với môi trường thực của người dùng.
- PanelEntity: Thêm nội dung 2D vào cảnh 3D bằng cách nhúng các bố cục và Hoạt động Android tiêu chuẩn vào các bảng điều khiển không gian có thể nổi hoặc được neo vào các bề mặt thực tế.
- GltfModelEntity: Đặt, tạo ảnh động và tương tác với các mô hình 3D trong cảnh. SceneCore hỗ trợ định dạng tệp glTF để dễ dàng tích hợp với các mô hình hiện có.
- SpatialAudio: Thêm nguồn âm thanh xung quanh và âm thanh điểm vào cảnh 3D để có âm thanh không gian sống động, chân thực.
- StereoSurfaceEntity: SceneCore hỗ trợ định tuyến mắt trái/phải của nội dung được kết xuất lên một Surface Android. Bạn có thể dùng tính năng này để kết xuất nội dung lập thể ở định dạng cạnh nhau hoặc trên dưới, chẳng hạn như ảnh lập thể, video 3D hoặc các giao diện người dùng được kết xuất động khác. Các ứng dụng nên sử dụng MediaPlayer hoặc ExoPlayer để giải mã video.
- Hệ thống thành phần: SceneCore cung cấp một hệ thống thành phần mạnh mẽ và linh hoạt để thêm các tính năng vào nội dung XR, bao gồm cả các tính năng hỗ trợ người dùng di chuyển, đổi kích thước và tương tác với các mô hình và bảng điều khiển.
- Mối liên kết: Khi bật tính năng truyền tải, bạn có thể đính kèm bảng điều khiển và mô hình vào các bề mặt thực tế, giúp người dùng tích hợp liền mạch nội dung ảo vào môi trường thực tế của họ.
- Tư thế người dùng: Truy cập vào vị trí của người dùng trong cảnh ảo để định hướng nội dung của bạn xung quanh vị trí của người dùng.
- SpatialCapabilities: Tạo các ứng dụng thích ứng hoàn toàn tận dụng các khả năng không gian khi có, chẳng hạn như định vị nội dung giao diện người dùng theo 3D. Không chỉ vậy, ứng dụng của bạn còn có thể theo dõi các thay đổi đối với chức năng trong khi ứng dụng đang thực thi để sửa đổi trải nghiệm dựa trên cách người dùng đang sử dụng thiết bị Android XR.
Lỗi đã biết
- Hiện tại, bạn cần có minSDK là 30 để sử dụng Jetpack SceneCore. Để khắc phục, hãy thêm mục nhập tệp kê khai
<uses-sdk tools:overrideLibrary="androidx.xr.scenecore, androidx.xr.compose"/>
sau đây để có thể tạo và chạy với minSDK là 23. - Phiên có thể trở nên không hợp lệ trong nhiều trường hợp tự động tạo lại Hoạt động, bao gồm cả việc đổi kích thước bảng điều khiển chính, kết nối thiết bị ngoại vi và thay đổi giữa chế độ sáng và tối. Nếu bạn gặp phải vấn đề về việc vô hiệu hoá phiên, bạn có thể khắc phục bằng cách không thay đổi kích thước bảng điều khiển chính, sử dụng thực thể bảng điều khiển động, tắt tính năng tạo lại hoạt động đối với các thay đổi cụ thể về cấu hình hoặc tắt các thay đổi về giao diện chế độ sáng/tối.
- Các thành phần có thể di chuyển và thay đổi kích thước không được hỗ trợ trên GltfEntity.
- Entity.getSize() không được hỗ trợ trên GltfEntity.
- Các ứng dụng Jetpack XR bắt buộc phải yêu cầu quyền
android.permission.SCENE_UNDERSTANDING
trong AndroidManifest. - Tính năng tạo phiên chỉ được hỗ trợ trên thiết bị Android XR. Tại thời điểm này, nếu tạo một Phiên và cố gắng sử dụng phiên đó trên một thiết bị không phải Android XR, bạn sẽ nhận được một RuntimeException.
- Việc đặt hộp trời thành rỗng thông qua `SpatialEnvironment.setSpatialEnvironmentPreference() không dẫn đến hộp trời màu đen đồng nhất như đã ghi nhận. Điều này có thể dẫn đến hộp bầu trời mặc định của hệ thống hoặc không thay đổi hộp bầu trời hiện tại.
- Ứng dụng SceneCore phải thêm
implementation(“com.google.guava:listenablefuture-1.0”)
vào cấu hình Gradle cho các phần phụ thuộc của ứng dụng. Trong bản phát hành trong tương lai, scenecore sẽ đưa thư viện này vào dưới dạng phần phụ thuộcapi
để ứng dụng không cần phải khai báo rõ ràng. - SceneCore bao gồm
com.google.guava:guava-31.1-android
vàcom.google.protobuf:protobuf-javalite
dưới dạng phần phụ thuộc bắc cầu một cách không chính xác. Nếu điều này dẫn đến lỗi lớp trùng lặp trong bản dựng, bạn có thể loại trừ an toàn 2 phần phụ thuộc này. - Nếu ứng dụng của bạn sử dụng SceneCore và bật ProGuard, thì ứng dụng đó sẽ gặp sự cố khi bạn tạo Phiên. Để khắc phục, hãy tắt ProGuard. Hãy xem hướng dẫn này để biết thêm thông tin về cách bật ProGuard.