Jetpack Compose for XR
העדכון האחרון | גרסה יציבה | גרסה מועמדת להפצה | גרסת בטא | גרסת אלפא |
---|---|---|---|---|
24 בספטמבר 2025 | - | - | - | 1.0.0-alpha07 |
הצהרה על יחסי תלות
כדי להוסיף תלות ב-XR Compose, צריך להוסיף את מאגר Google Maven לפרויקט. מידע נוסף זמין במאמר בנושא מאגר Maven של Google.
מוסיפים את יחסי התלות של הארטיפקטים שאתם צריכים בקובץ build.gradle
של האפליקציה או המודול:
Groovy
dependencies { implementation "androidx.xr.compose:compose:1.0.0-alpha07" // Use to write unit tests testImplementation "androidx.xr.compose:compose-testing:1.0.0-alpha07" }
Kotlin
dependencies { implementation("androidx.xr.compose:compose:1.0.0-alpha07") // Use to write unit tests testImplementation("androidx.xr.compose:compose-testing:1.0.0-alpha07") }
מידע נוסף על יחסי תלות זמין במאמר הוספת יחסי תלות ב-build.
משוב
המשוב שלכם עוזר לנו לשפר את Jetpack. נשמח לשמוע מכם אם תגלו בעיות חדשות או אם יש לכם רעיונות לשיפור הספרייה הזו. לפני שיוצרים ספרייה חדשה, כדאי לעיין בבעיות הקיימות בספרייה הזו. כדי להוסיף את ההצבעה שלכם לבעיה קיימת, לוחצים על לחצן הכוכב.
מידע נוסף זמין במאמרי העזרה בנושא כלי המעקב אחר בעיות.
גירסה 1.0
גרסה 1.0.0-alpha07
24 בספטמבר 2025
הגרסאות androidx.xr.compose:compose:1.0.0-alpha07
וandroidx.xr.compose:compose-testing:1.0.0-alpha07
יוצאות לאור. גרסה 1.0.0-alpha07 מכילה את הקומטים האלה.
שינויים ב-API
- שיפרנו את מסמכי KDocs עבור
SpatialMainPanel
. (I27b70, b/444467891) - הוספנו את
SpatialArrangement
לסידור של רכיבי צאצא לאורך הציר הראשי בפריסות תלת-ממדיות כמוSpatialRow
ו-SpatialColumn
. ממשק ה-API החדש הזה מספק אפשרויות מוכרות לסידור התצוגה מ-2D Compose, כוללStart
,End
,Center
,SpaceBetween
,SpaceAround
ו-SpaceEvenly
, עם תמיכה מלאה בפריסות משמאל לימין ומימין לשמאל. (I7db38, b/436289959) - הוספנו ממשק בסיסי ל-
SubspaceModifier.Node
כדי לשפר את בטיחות הסוגים ואת נוחות השימוש בממשקי הרחבות, כמוCompositionLocalConsumerSubspaceModifierNode
LayoutCoordinatesAwareModifierNode
SubspaceLayoutModifierNode
-
CoreEntityNode
(internal) (Iede00, b/440599394, b/440599394)
- ביטול ההגבלה
SpatialExternalSurface
(I33315, b/439646773) - הוספת
SubspaceModifier
לרכיבים הניתנים להרכבה של Subspace והחלפת פרמטר האילוציםSubspaceModifier
בפרמטרSubspaceModifiers
שקשור לגודל. אםallowUnboundedSubspace
מוגדר כ-True, עדיין יכולות להיות הגבלות לא מוגבלות במרחבים משניים. (Ib06e6, b/433331675) - הוצאנו משימוש את
SubspaceModifiers
שאפשר להזיז ולשנות את הגודל שלה, ועכשיוDragPolicy()
ו-ResizePolicy()
הם חלק מממשקיSpatialPanel
ו-SpatialExternalSurface
API (I397bf, b/437924639) - נוספה תמיכה ב-
LayoutDirection
בפריסות מרחביות. השימוש ב-SpatialAlignment
יאפשר עכשיו למקם רכיבים בצורה נכונה בהקשרים של כתיבה מימין לשמאל ומשמאל לימין. (I964bb, b/436300273) - מוסיפים פרמטרים של שינוי גודל והזזה לממשקי ה-API של
Panel
כדי לוודא שאפשר להחיל את ההתנהגויות האלה רק על מאגרי נתונים נתמכים. (Id491c) - הוספנו את המאפיינים
sizeIn
, widthIn
, heightIn
, depthIn
ו-SubspaceModifiers
שמאפשרים להגדיר אילוצים מדויקים של מינימום ומקסימום לרוחב, לגובה ולעומק. (I1af09, b/433330761)
גרסה 1.0.0-alpha06
13 באוגוסט 2025
הגרסאות androidx.xr.compose:compose:1.0.0-alpha06
וandroidx.xr.compose:compose-testing:1.0.0-alpha06
יוצאות לאור. גרסה 1.0.0-alpha06 מכילה את הקומטים האלה.
תיקוני באגים
- יצירה מחדש של
ComposeXrOwnerLocals
כשהבעלים של מחזור החיים מושמד. (9123ce1)
גרסה 1.0.0-alpha05
30 ביולי 2025
הגרסאות androidx.xr.compose:compose:1.0.0-alpha05
וandroidx.xr.compose:compose-testing:1.0.0-alpha05
יוצאות לאור. גרסה 1.0.0-alpha05 מכילה את הקומטים האלה.
תכונות חדשות
- הגדרתי את סיווג ההערות
SubspaceComposable
כגלוי לכולם. (Ic2a34, b/399432430) - שני רכיבי
SpatialExternalSurface
חדשים שניתן להרכבה שמייצגים כדורים של 180 ו-360 מעלות. (I40ef2, b/391705799) - נוספו
SubspaceModifier.aspectRatio
(Ide5ab, b/399729509, b/414762147) - הוספנו את
SceneCoreEntity
API כדי לשפר את יכולת הפעולה ההדדית ביןSceneCore
לבין Compose for XR. (I50bb3, b/423020989) - הוספנו
GravityAlignedsubspace
API לתמיכה בתכונה 'ללא שינוי גודל' ובתכונהGravityAligned
(I07359)
שינויים ב-API
-
SpatialDialog()
יפעל לפי הגדרת הלחיצה שלSpatialDialogProperties.dismissOnBack
. (Ib453b, b/416797132) - העדכון של
minimumPanelDimension
לגודל ברירת מחדל חדש שלDimensions(0.1f, 0.1f, 0.1f)
, בגלל הייצוג שלו במטרים. (Ib852a) - מרחבים משניים ולוויינים ישמרו עכשיו את המצב הפנימי שלהם במרחב הבית וכשהאפליקציה פועלת ברקע. במצב 'תצוגה מצומצמת', עדיין תוגדר הסצנה ב-Subspace לקראת המעבר למצב 'תצוגה מורחבת'. (I40317, b/416037751)
- מעכשיו,
SpatialDialogs
ישמרו את המצב שלהם כשהאפליקציה פועלת ברקע. (I6aa56) - המכשיר
ApplicationSubspace
יקבל עכשיו מהמערכת את המיקום והקנה מידה המומלצים שלו. (I4565f, b/418834194) - הוספנו הודעת שגיאה טובה יותר והפעלנו את השגיאה מוקדם יותר כשמשתמשים ב-
SubspaceComposable
בהקשר שאינוSubspaceComposable
. (Iee2ae, b/416484684) - העדכון של
ExperimentalSubspaceVolumeApi
מאזהרה לשגיאה נובע מכך שפעמים רבות מתעלמים מאזהרות כשמשתמשים ב-API שאפשר להרכיב בצורה לא נכונה. (I427aa, b/424864286) - הגישה ל-Subspace ול-
ApplicationSubspace
מוגבלת עכשיו על ידיrecommendedContentBoxInFullSpace
. בעבר, היא הוגבלה על ידי שדה הראייה שלSpatialUser
. (I41015, b/423074142) - עדכון
SpatialElevation
לשימוש בגודל מינימלי כדי להפסיק להשתמש בגודל שמוגדר בהארד קוד (I2dbe6, b/427785338) - עדכון של אופן ההקרנה של
SpatialAcitivityPanel
כדי שהעדכון יתבצע כשמשנים משתנה מרכזי. (I0f64d, b/427999029) - מומלץ להסיר את
VolumeConstraints.Unbounded
ולהגדיר את ערכי ברירת המחדל של האילוץ לערך המקביל. (Ie24ec, b/407938414) - התוכן של
SpatialFeatheringSize
כבר לא ציבורי (I1c15b, b/399432430) - שינינו את השם של XR
Placeable
ל-SubspacePlaceable
כדי להבדיל אותו מ-Placeable
של Compose. (I74874) - הסרת ההגדרות של Orbiter והוספת
shouldRenderInNonSpatial
כפרמטר חדש. בנוסף, הסרנו את המחלקהEdgeOffset
והוספנו אתorbiterOffsetType
כפרמטר חדש כדי לאחד את הפונקציותOrbiter()
. וגם שינית את השם שלOrbiterEdge
ל-ContentEdge
. (Iebf3d) - השם של
Measurable
שונה ל-SubspaceMeasurable
כדי להבדיל בין הסוג הזה לבין הסוגMeasurable
של Compose. (I9726c) - שינוי השם של
MeasureResult
ל-SubspaceMeasureResult
(I9f34d) - הסרנו את
setSubspaceContent
API לטובת שימוש ב-setContent
של Compose עם קומפוזביליSubspace
. (Ifff4c, b/421427391, b/421427391) - השם של
MeasurePolicy
השתנה לSubspaceMeasurePolicy
. (I37a9b, b/422553904) - הפוך את
SubspaceSemanticsInfo
לממשק אטום כי לא נוכל להוסיף חברים בלי ברירות המחדל. (I372f9, b/423704068) - עדכון התיעוד של
SpatialExternalSurface
, שינוי השם שלContentSecurityLevel
ל-SurfaceProtection
(I3c460, b/420982808) - נוסף constructor עם עומס יתר לשינוי movable, שמאפשר הצמדה. (Ic0c70)
- הוספנו עוד ספק מיקום לתיאורי הכלים, כך שעכשיו מפתחים יכולים לקבוע אם תיאור הכלי יוצב מעל, מתחת, משמאל או מימין לנקודת העיגון. הוספנו API שמקבל צורה של חץ, כדי שאפשר יהיה לספק יותר צורות מותאמות אישית. (Ie513c, b/374766087, b/418854637)
- הוסר
CoreEntity
כPublishedApi
(Ifee05)
תיקוני באגים
- תוקנה בעיה שבה הסמל
SpatialDialog
הבהב בזמן העיבוד. (Ife73c, b/401619909) - תוקנה בעיה שגרמה לכך שלא ניתן היה להשתמש ב-
SpatialDialog
כדי להסתיר את חלונית הפעילות. (I8ca6c, b/367442109) - תוקנה בעיה שגרמה לכך שחלק מהתוכן לא הוצג בתיבת הדו-שיח של XR (I17cd5, b/418062437)
- תוקנה הבעיה שבה חלון ההודעה
SpatialPopup
נסגר כשלוחצים בתוך התוכן. (If262c, b/417245722) - תוקנה הבעיה שבה כשמשלבים
resizable().movable()
, גודל החלונית Spatial לא משתנה לגודל החדש. (I02ee3, b/422264230) - תוקנה בעיה שבה
topBar
חופף לתפריט ב-SpatialComposeVideoPlayer
(Id33bc, b/427168167) - רדיוס פינה קבוע לא מוצג (I975fe, b/428261830)
גרסה 1.0.0-alpha04
7 במאי 2025
הגרסאות androidx.xr.compose:compose:1.0.0-alpha04
וandroidx.xr.compose:compose-testing:1.0.0-alpha04
יוצאות לאור. גרסה 1.0.0-alpha04 מכילה את הקומטים האלה.
תכונות חדשות
- נוסף ממשק
CompositionLocalConsumerSubspaceModifierNode
כדי לאפשר לסוגים מותאמים אישית שלSubspaceModifier
לגשת לערכים מקומיים של קומפוזיציה. - הוספנו API חדש,
SpatialPanel
, שפועל לפי סגנון ההטמעה שלAndroidView
, והוצאנו משימוש אתViewBased SpatialPanel
הקודם. - נוסף אובייקט נלווה
VolumeConstraints.Unbounded
שמייצג אילוצים לא מוגבלים. - נוספה
SubspaceModifier.onPointSourceParams
כדי לאפשר מקור אודיו מרחבי. - נוסף
ApplicationSubspace
ציבורי, עם אפשרותVolumeConstraints
להגדיר אזור תלת-ממדי שבו האפליקציה יכולה להציג תוכן מרחבי. כברירת מחדל, אם לא מציינים אילוצים, המרחב המשני יהיה מוגבל על ידי שדה הראייה הנוכחי שלSpatialUser
ברוחב ובגובה. המשתמשים יכולים לספק אילוצים לשימוש במקרים שבהם לא ניתן לקבוע את שדה הראייה. אחרת, נעשה שימוש בערכי ברירת המחדל של רוחב וגובה שדה הראייה. - נוספה התכונה
SpatialExternalSurface
, שאפשר להשתמש בה כדי להציג תוכן סטריאוסקופי. אפשר להתאים אישית אתSpatialExternalSurface
באמצעות משנים (חוץ מאלפא) ואפקט טשטוש קצוות. - נוסף
pointerHoverIcon
Subspace Modifier חדש שמאפשר למשתמשים להגדיר את הסמל של המצביע המרחבי.
שינויים ב-API
- ההגבלה
RequiresApi(34)
הוסרה מכל חבילות Jetpack XR. המגבלה הזו הייתה מיותרת כי Jetpack XR זמין כרגע רק במכשירים עם רמת API 34 ומעלה. (Iae0f8) - כדי להשתמש בפרויקטים שפורסמו עם Kotlin 2.0, צריך KGP בגרסה 2.0.0 ומעלה. (Idb6b5)
- הטיפול בפעולת החזרה יפעל עכשיו בחלוניות מרחביות ללא פעילויות מוטמעות. כדי שהטיפול בפעולת החזרה יפעל, צריך לציין
android:enableOnBackInvokedCallback="true"
במניפסט של Android. - מעכשיו אפשר להשתמש בתכונה 'הקודם' בתיבות דו-שיח מרחביות. כדי שהטיפול בפעולת החזרה יפעל, צריך לציין את
android:enableOnBackInvokedCallback="true"
במניפסט של Android. - רכיבי
SpatialPanel
מבוססי-Compose ומבוססי-View יכולים עכשיו לשנות את הגודל שלהם בהתאם לתוכן שלהם. - מפתחים יכולים עכשיו להגדיר ערכי
SpatialElevationLevel
מותאמים אישית משלהם, והם לא מוגבלים לרמות המוגדרות מראש. - עכשיו אפשר להתאים אישית את רמת הגובה של Orbiter באמצעות הפרמטר
elevation
. - מעכשיו, כברירת מחדל, אפשר להגביל את המרחב המשני לפי שדה הראייה של
SpatialUser
ברוחב ובגובה. אם אי אפשר לקבוע את שדה הראייה, המערכת משתמשת בערכי ברירת המחדל של הרוחב והגובה של שדה הראייה. - נוספו קריאות חוזרות חדשות
onMoveStart
ו-onMoveEnd
לשינויMovable
. הקריאות החוזרות (callbacks)onMoveStart
ו-onMoveEnd
מופעלות כשהמשתמש מתחיל ומסיים להזיז את המרחב המשנה שניתן להרכבה עם שינוי המיקום. - הפרמטר
name
הוסר מממשקי API מרחביים כמוSpatialRow
ו-SpatialPanel
. לניפוי באגים בעצים של קומפוזיציה מרחבית, משתמשים במקום זאת ב-SubspaceModifier.testTag
. - הוסרה עומס יתר לא נתמך של
SpatialPopup
שיש לו רקspatialElevationLevel
ו-content
. צריך להשתמש בממשק שתומך ב-onDimissRequest
. - ההחזרה (callback) של
onPoseChange
מהמשנה (modifier) הניתן להזזה הוסרה. במקום זאת, אתם צריכים להשתמש ב-onMove
. SubspaceModifiers
לא יחולו יותר אם הן מנותקות או בתהליך ניתוק.- ממשק ה-API הקיים של
SpatialRow
פוצל ל-SpatialRow
ול-SpatialCurvedRow
. אם השתמשתם בעבר בפרמטרcurveRadius
שלSpatialRow
, עכשיו צריך להשתמש בפרמטרSpatialCurvedRow
במקום, כי הוא מציע את אותה התנהגות. - ל-
MainPanel
ול-ActivityPanel
כבר אין סרגלי כותרת כשמריצים אותן על קובץ אימג' של מערכת עדכנית דומה. - עכשיו אפשר להשתמש בכמה משני אלפא ומשני גודל ביחד, והערכים שלהם יוכפלו כדי לקבל את ערך האלפא או הגודל הסופי.
- התקשרות חזרה (callback) משינוי המיקום של המיקום הניתן לשינוי עברה אופטימיזציה כדי לאפשר תנועה חלקה יותר של התנוחה.
onPoseChange
- השינויים במצב יפעילו עכשיו את ההרכבה מחדש, כי הפונקציות של שינוי הגודל והמיקום יפעלו ב-callback בשרשור הראשי.
- הוספנו מעקב אחרי מצב בשלבי הפריסה והמדידה כדי לוודא ששינויים במצב ב-
SubspaceLayout
יפעילו פריסה מחדש. - עדכנו את שרשרת שינויי המחירים שעברה אופטימיזציה כדי לשפר את השימוש החוזר בשינויי מחירים קיימים.
תיקוני באגים
- הפסקת ההצללה כשמוצג
SpatialDialog
. (Ic4594) - בקשות לשינוי פריסה שנשלחות בזמן שצמתי שינוי מנותקים יקבלו מעכשיו התעלמות.
- הוסרו שלבי פריסה מחדש שהופעלו על ידי משנים מסוג Movable ו-Resizable.
- תוקנה קריסה ב-
MainPanel()
composable שהתרחשה כששני המאפיינים הוגדרו לאפס, באופן ישיר או במהלך חישוב פריסה, למשל חישוב שלSpatialRow/SpatialColumn
. החלונית תוסתר במקום זאת. שימו לב שהתיקון הזה מתייחס ספציפית לקריסות במהלך שלב הפריסה. שינוי הגודל של החלונית לאפס באמצעות אינטראקציה עם המשתמש יטופל בנפרד. לחלונית המוסתרת חסרים רכיבי ממשק משתמש. - תוקנה בעיה שקשורה ל-
maintainAspectRatio
מהמשנה resizable. יחס הגובה-רוחב אמור להישמר עכשיו. - תוקנה בעיה במרחבים משניים מוטמעים שבה הם ממוקמים בצורה שגויה בפריים בודד.
- תוקנה הבעיה שבה פינות מעוגלות לא הוחלו לפעמים כשהיה צריך להחיל אותן.
- המסגרת של
NestedSubspaces
לא תופיע יותר במיקום הלא נכון.
גרסה 1.0.0-alpha03
26 בפברואר 2025
הגרסאות androidx.xr.compose:compose:1.0.0-alpha03
ו-androidx.xr.compose:compose-testing:1.0.0-alpha03
הושקו ללא שינויים משמעותיים מאז גרסת האלפא האחרונה. גרסה 1.0.0-alpha03 מכילה את הקומטים האלה
גרסה 1.0.0-alpha02
12 בפברואר 2025
הגרסאות androidx.xr.compose:compose:1.0.0-alpha02
וandroidx.xr.compose:compose-testing:1.0.0-alpha02
יוצאות לאור. גרסה 1.0.0-alpha02 מכילה את ההתחייבויות האלה.
תכונות חדשות
- עכשיו, כשמפעילים את התכונה 'דיאלוג מרחבי', אפשר להסתיר את התוכן של חלונית הפעילות.
- אפשר להשתמש עכשיו ב-
Orbiter
API בהקשרים שלSubspaceComposable
, והוא יצרף את ה-Orbiters ליחידת ההורה הקרובה ביותר שניתנת להרכבה ומבוססת עלSubspaceLayout
. - הוספנו את
LayoutCoordinatesAwareModifierNode
כדי לאפשר שינויים מותאמים אישית שמבוססים על מיקום. - נוספו שיטות מחזור חיים של צירוף/ניתוק ל-
SubspaceModifier.Node
. - הוספתם את
scaleWithDistance
לערך הקבוע שניתן להזזה. כשהאפשרותscaleWithDistance
מופעלת, הרכיב של המרחב המשני שמועבר יגדל או יקטן. הוא גם ישמור על כל סולם מפורש שהיה לו לפני ההעברה.
שינויים ב-API
- הסרנו את
SessionCallbackProvider
לטובתSpatialCapabilities
.
שינויים אחרים
- הורדנו את
minSDK
ל-24. כל ממשקי Jetpack XR API עדיין דורשים API ברמה 34 בזמן הריצה. - הקונסטרקטורים
Orbiter
EdgeOffset.inner
,EdgeOffset.outer
ו-EdgeOffset.overlap
הם כבר לא מתודות של@Composable
, ולכן אפשר להשתמש בהם בהקשרים שאינם ניתנים להרכבה. - עדכון של רמות הגובה המרחביות בהתאם למפרט חוויית המשתמש העדכני.
- הטמעת הממשק
SubspaceSemanticsInfo
ב-MeasurableLayout
. - השם של
SubspaceModifierElement
שונה ל-SubspaceModifierNodeElement
.
תיקוני באגים
- תיקונים לשיפור היציבות של הזמנות ב-
SubspaceModifier
.SubspaceModifier
אמור להתנהג בצורה מהימנה יותר. עכשיו אפשר להשתמש במקשי התיקון Offset, rotate, scale, movable ו-resizable בכל סדר.
גרסה 1.0.0-alpha01
12 בדצמבר 2024
androidx.xr.compose:compose-*1.0.0-alpha01
משוחרר.
תכונות של הגרסה הראשונית
גרסת פיתוח ראשונית של Jetpack Compose for XR. אפשר להשתמש במושגים מוכרים מ-Compose, כמו שורות ועמודות, כדי ליצור פריסות מרחביות של ממשקי משתמש ב-XR, בין אם אתם מעבירים אפליקציית דו-ממד קיימת ל-XR או יוצרים אפליקציית XR חדשה מאפס. הספרייה הזו מספקת רכיבים מרחביים ורכיבים שניתנים להרכבה במרחב: כמו חלוניות מרחביות ורכיבי Orbiters, שמאפשרים לכם למקם את ממשק המשתמש הקיים שלכם מבוסס-Views או מבוסס-Compose דו-ממדי בפריסה מרחבית. הוא כולל את רכיב המשנה Volume, שמאפשר למקם ישויות של SceneCore, כמו מודלים תלת-ממדיים, ביחס לממשק המשתמש. מידע נוסף זמין במדריך למפתחים:
Subspace
: אפשר למקם את הקומפוזיציה הזו בכל מקום בהיררכיית ממשק המשתמש של האפליקציה, וכך לשמור על פריסות לממשק משתמש דו-ממדי ומרחבי בלי לאבד את ההקשר בין הקבצים. כך קל יותר לשתף דברים כמו ארכיטקטורת אפליקציה קיימת בין XR ובין גורמי צורה אחרים, בלי להעביר את המצב דרך כל עץ ממשק המשתמש או לשנות את הארכיטקטורה של האפליקציה.SpatialPanel: חלונית מרחבית היא רכיב הניתן להרכבה במרחב משנה, שמאפשר להציג תוכן של אפליקציה – למשל, אפשר להציג הפעלת סרטון, תמונות סטילס או כל תוכן אחר בחלונית מרחבית.
אורביטר: רכיב בממשק המשתמש שמוצג במרחב. הוא מיועד לצירוף לחלונית מרחבית תואמת, ומכיל פריטי ניווט ופעולות הקשריות שקשורות לחלונית המרחבית הזו. לדוגמה, אם יצרתם חלונית תלת-ממדית להצגת תוכן וידאו, תוכלו להוסיף לחלונית כפתורי הפעלה של הווידאו.
נפח: מיקום ישויות SceneCore, כמו מודלים תלת-ממדיים, ביחס לממשק המשתמש.
פריסה מרחבית: אפשר ליצור כמה חלונות מרחביים ולמקם אותם בפריסה מרחבית באמצעות
SpatialRow
,SpatialColumn
,SpatialBox
ו-SpatialLayoutSpacer
. משתמשים ב-SubspaceModifier
s כדי להתאים אישית את הפריסה.רכיבי ממשק משתמש מרחביים: אפשר לעשות שימוש חוזר באלמנטים האלה בממשק המשתמש הדו-ממדי, והמאפיינים המרחביים שלהם יהיו גלויים רק כשמפעילים את היכולות המרחביות.
-
SpatialDialog
: החלונית תזוז מעט אחורה בעומק כדי להציג תיבת דו-שיח מוגבהת. -
SpatialPopUp
: החלונית תזוז מעט אחורה בעומק בציר Z כדי להציג חלון קופץ מוגבה -
SpatialElevation
: אפשר להגדיר אתSpatialElevationLevel
להוספת גובה.
-
SpatialCapabilities: היכולות המרחביות יכולות להשתנות כשהמשתמשים יוצרים אינטראקציה עם האפליקציה או עם המערכת, או אפילו להשתנות על ידי האפליקציה עצמה – למשל, מעבר למרחב הבית או למרחב מלא. כדי להימנע מבעיות, האפליקציה צריכה לבדוק אם יש
LocalSpatialCapabilities.current
כדי לקבוע אילו ממשקי API נתמכים בסביבה הנוכחית. isSpatialUiEnabled
: Spatial UI elements (e.g. SpatialPanel) isContent3dEnabled
: 3D objects isAppEnvironmentEnabled
: The environment isPassthroughControlEnabled
: Whether or not the application can control the passthrough state isSpatialAudioEnabled
: Spatial audio
בעיות מוכרות
- נכון לעכשיו, נדרשת גרסת minSDK 30 כדי להשתמש ב-Jetpack Compose for XR. כפתרון עקיף, אפשר להוסיף את רשומת המניפסט הבאה
<uses-sdk tools:overrideLibrary="androidx.xr.scenecore, androidx.xr.compose"/>
כדי לבצע build ולהפעיל עם minSDK של 23. - כדי להשתמש באפליקציות Jetpack XR, צריך לבקש הרשאה
android.permission.SCENE_UNDERSTANDING
ב-AndroidManifest. - כשמפעילים אפליקציה ישירות במרחב מלא באמצעות המאפיין
PROPERTY_XR_ACTIVITY_START_MODE
במניפסט שלה, הפעילויות או האפליקציות נפתחות בהתחלה במרחב הבית לפני שהן עוברות למרחב מלא. - יכול להיות שקובצי glTF ברכיבים קומפוזביליים של נפח יהבהבו בהתחלה במיקום הלא נכון.
- שימוש ב-SpatialDialog בחלונית שהוזזה באופן משמעותי ידחוף את התוכן בכיוון הלא נכון.