ARCore for Jetpack XR
| העדכון האחרון | גרסה יציבה | גרסה מועמדת להפצה | גרסת בטא | גרסת אלפא |
|---|---|---|---|---|
| 25 במרץ 2026 | - | - | - | 1.0.0-alpha12 |
הצהרה על יחסי תלות
כדי להוסיף תלות ב-ARCore for Jetpack XR, צריך להוסיף את מאגר Google Maven לפרויקט. מידע נוסף זמין במאמר Google's Maven repository
אתם יכולים להוסיף את יחסי התלות של הארטיפקטים שאתם צריכים בקובץ build.gradle של האפליקציה או המודול:
מגניב
dependencies { implementation "androidx.xr.arcore:arcore:1.0.0-alpha12" // Optional dependencies for asynchronous conversions implementation "androidx.xr.arcore:arcore-guava:1.0.0-alpha12" implementation "androidx.xr.arcore:arcore-rxjava3:1.0.0-alpha12" }
Kotlin
dependencies { implementation("androidx.xr.arcore:arcore:1.0.0-alpha12") // Optional dependencies for asynchronous conversions implementation("androidx.xr.arcore:arcore-guava:1.0.0-alpha12") implementation("androidx.xr.arcore:arcore-rxjava3:1.0.0-alpha12") }
מידע נוסף זמין במאמר הוספת יחסי תלות ב-build.
משוב
המשוב שלכם עוזר לנו לשפר את Jetpack. נשמח לדעת אם גיליתם בעיות חדשות או אם יש לכם רעיונות איך לשפר את הספרייה הזו. כדאי לעיין בבעיות הידועות בספרייה הזו לפני שמדווחים על בעיה. כדי להוסיף הצבעה בדיווח על בעיה קיימת, לוחצים על כפתור הכוכב.
מידע נוסף זמין במאמרי העזרה בנושא Issue Tracker.
גירסה 1.0
גרסה 1.0.0-alpha12
25 במרץ 2026
androidx.xr.arcore:arcore-*:1.0.0-alpha12 מופץ. גרסה 1.0.0-alpha12 מכילה את השמירות האלה.
שינויים ב-API
- השדה
Config.augmentedObjectCategoriesהשתנה מרשימה לקבוצה. (I25a64, b/487376359) - הסוגים
androidx.xr.arcore.Eyeו-androidx.xr.arcore.Hand. (I42438, b/449032900) - נוסף
Session.createoverload כדי לאפשר העברה של הקשר Android לשינוי היקף המשאבים. (I7d3fe, b/415805990, b/477386334) - השינוי מ-
FakeRuntimeAnchor.ANCHOR_RESOURCE_LIMITל-FakeRuntimeAnchor.anchorResourceLimit. (I90841, b/431992235) - הגדרנו את
TiltGestureAPI כניסיוני כי יכול להיות שהוא ישתנה או יוסר בעתיד. כדי להשתמש ב-API הזה, צריך להביע הסכמה לשימוש ב-@ExperimentalGesturesApi(Ic9858) - נוספה אפשרות להגדיר קטגוריות למעקב אחר
AugmentedObjectבהגדרות (I1f6e4, b/480220930)
תיקוני באגים
- תוקן ה-build של Chrome על ידי עדכון הקובץ META-INF/services/ במיקום בפועל של
PerceptionRuntimeFactory. (I7a801, b/481288291)
גרסה 1.0.0-alpha11
25 בפברואר 2026
androidx.xr.arcore:arcore-*:1.0.0-alpha11 מופץ. גרסה 1.0.0-alpha11 מכילה את השמירות האלה.
גרסה 1.0.0-alpha10
28 בינואר 2026
androidx.xr.arcore:arcore-*:1.0.0-alpha10 מופץ. גרסה 1.0.0-alpha10 מכילה את השמירות האלה.
תכונות חדשות
- הוספנו את
TiltGestureAPI, שמספקFlowתגובתי לזיהוי יציב של מצב הטיית המכשיר (למעלה/למטה) עם התקדמות המעבר. (Ic269f, b/448152779) - ARCore for Jetpack XR משתמש עכשיו במנגנון הרישום ביומן של XR Runtime. מידע נוסף זמין בכתובת
androidx.xr.runtime.Log. (l52735, b/448697662)
שינויים ב-API
-
Geospatial.createPoseFromGeospatialPoseפועל עכשיו במכשירים עם OpenXR. (l362c6)
גרסה 1.0.0-alpha09
3 בדצמבר 2025
androidx.xr.arcore:arcore-*:1.0.0-alpha09 מופץ. גרסה 1.0.0-alpha09 מכילה את השמירות האלה.
גרסה 1.0.0-alpha08
19 בנובמבר 2025
androidx.xr.arcore:arcore-*:1.0.0-alpha08 מופץ. גרסה 1.0.0-alpha08 מכילה את השמירות האלה.
תכונות חדשות
-
ARCorefor Jetpack XR תומך עכשיו במכשירים שבהם זמינים שירותי Google Play למציאות רבודה. - נוספו ממשקי API של מידע גיאוגרפי לזמינות של VPS ולהמרת תנוחות (I144dc)
גרסה 1.0.0-alpha07
22 באוקטובר 2025
androidx.xr.arcore:arcore-*:1.0.0-alpha07 מופץ. גרסה 1.0.0-alpha07 מכילה את השמירות האלה.
תיקוני באגים
:xr:arcore:arcore-openxrנוסף כתלות בהטמעה ל-:xr:arcore:arcore(I47315, b/446999229)
גרסה 1.0.0-alpha06
24 בספטמבר 2025
androidx.xr.arcore:arcore-*:1.0.0-alpha06 מופץ. גרסה 1.0.0-alpha06 מכילה את השמירות האלה.
שינויים ב-API
- התמיכה בבדיקות של
ARCoreעברה למודולxr:arcore:arcore-testing. (I25469) - הוספת
ArDeviceו-RenderViewpointכדי לאפשר לאפליקציות לאחזר את תנוחת המכשיר ואת הגדרות התצוגה למטרות רינדור. (Ib7e3f) - שינוי השם של סוגי ה-enum
HandJointTypeעם הקידומתHAND_JOINT_TYPE_. (I3f7cd) - הפריט
HandJointTypeהועבר אלxr:arcore:arcoreמ-xr:runtime:runtime. (Iadb9c, b/409058039) -
Hand.Stateחושף עכשיוjava.nio.FloatBufferעם התנוחות המשותפות בפורמט שמאפשר גישה קלה לאפליקציות שמתמקדות בביצועים. (I55e27)
גרסה 1.0.0-alpha05
30 ביולי 2025
האפליקציות androidx.xr.arcore:arcore:1.0.0-alpha05, androidx.xr.arcore:arcore-guava:1.0.0-alpha05 וגם androidx.xr.arcore:arcore-rxjava3:1.0.0-alpha05 מושקות. גרסה 1.0.0-alpha05 מכילה את השמירות האלה.
תכונות חדשות
- הוספת
getPrimaryHandSideכדי שהמפתח יוכל לקבל את המידע בצד שמאל (I270bd) - הוספת API לבדיקת הזמינות של VPS גיאוספציאלי (I58573)
- הוספת ARCore API ל-
checkVpsAvailability(Idbded) - פונקציות ההרחבה
stateFlowableנוספו ל-:xr:arcore:arcore-rxjava3לשימוש של מפתחי Java. (I083aa, b/427247794)
שינויים ב-API
- השמות של ערכי ההגדרה
*Modeשונו כדי לשקף את ההתנהגות שלהם. (I6d247, b/414648065) - הארטיפקט הראשי של ARCore (xr:arcore:arcore) יכיל רק ממשקי API אסינכרוניים בסגנון Kotlin. מפתחי Java יכולים להסתמך על ספריית
xr:arcore:arcore-rxjava3כדי לגשת לממשקי API תואמים. (Ia525e, b/422794329) - הארטיפקט הראשי של ARCore (
xr:scenecore:scenecore) יכיל רק ממשקי API אסינכרוניים בסגנון Kotlin. מפתחי Java יכולים להסתמך על ספרייתxr:arcore:arcore-guavaכדי לגשת לממשקי API תואמים. (Iffcb4, b/422773524) - הספרייה
Anchor.persistAsync()נוספה ל-AnchorGuavaלשימוש של מפתחי Java. (I4af1c, b/425984631) - הספרייה
Earth.createAnchorOnSurfaceAsync(Session, Double, Double, Double, Quaternion, Surface)נוספה ל-EarthGuavaלשימוש של מפתחי Java. (I66357, b/425992992) - מפתחי Java ישתמשו בפונקציות ההרחבה של
GltfModel.createAsyncב-GltfModel.kt. פונקציות אסינכרוניות ב-GltfModelיימחקו. (I0af60) - הספרייה הזו משתמשת עכשיו באנוטציות של JSpecify לגבי ערכי null, שהן אנוטציות של שימוש בטיפוסים. מפתחי Kotlin צריכים להשתמש בארגומנט הקומפיילר הבא כדי לאכוף שימוש נכון:
-Xjspecify-annotations=strict(זוהי ברירת המחדל החל מגרסה 2.1.0 של קומפיילר Kotlin) (Ia8420, b/326456246) - פונקציות ההרחבה
subscribeAsFlowableנוספו ל-:xr:arcore:arcore-rxjava3לשימוש של מפתחי Java. (Id3e49, b/427277298)
גרסה 1.0.0-alpha04
7 במאי 2025
androidx.xr.arcore:arcore:1.0.0-alpha04 מופץ. גרסה 1.0.0-alpha04 מכילה את השמירות האלה.
שינויים ב-API
- כדי להשתמש בפרויקטים שפורסמו עם Kotlin 2.0, צריך להשתמש ב-KGP 2.0.0 או בגרסה חדשה יותר. (Idb6b5)
-
TrackingStateו-HandJointTypeהועברו מ-ARCore ל-Runtime. - הערך של
Hand.State.isActive (boolean)השתנה ל-Hand.State.trackingState (androidx.xr.runtime.TrackingState). - הפונקציה
Anchor.loadמחזירהAnchor.AnchorLoadInvalidUuidאם ה-UUID לא תקין.
גרסה 1.0.0-alpha03
26 בפברואר 2025
הגרסה androidx.xr.arcore:arcore:1.0.0-alpha03 הושקה ללא שינויים משמעותיים מאז גרסת האלפא האחרונה. גרסה 1.0.0-alpha03 מכילה את השמירות האלה.
גרסה 1.0.0-alpha02
12 בפברואר 2025
androidx.xr.arcore:arcore:1.0.0-alpha02 מופץ. גרסה 1.0.0-alpha02 מכילה את השמירות האלה.
תכונות חדשות
- הוספנו תמיכה במעקב ידיים. אפשר להשתמש ב
Hand.leftובHand.rightכדי לגשת לפרטי המעקב. - ממשקי API שיוצרים עוגן (
Anchor.create, Anchor.load, Plane.createAnchor) מחזירים עכשיו את הערךAnchorCreateResultומיישמים אתAnchorCreateResourcesExhaustedבצורה תקינה.
תיקוני באגים
- השגיאה
Anchor.detachלא גורמת יותר לקריסה קטלנית בגלל מרוץ תהליכים עם השרשור של עדכון הסשן. Anchor.createיציב יותר כשמריצים אותו באמולטור
גרסה 1.0.0-alpha01
12 בדצמבר 2024
androidx.xr.arcore:arcore-* 1.0.0-alpha01 מופץ.
תכונות של הגרסה הראשונה
הספרייה ARCore for Jetpack XR, שנוצרה בהשראת ספריית ARCore הקיימת, מספקת יכולות לשילוב תוכן דיגיטלי עם העולם האמיתי. הספרייה הזו כוללת מעקב תנועה, עוגנים קבועים, בדיקת פגיעה וזיהוי מישור עם תיוג סמנטי (לדוגמה, רצפה, קירות ומשטחי שולחן). מידע נוסף על עבודה עם ARCore for Jetpack XR זמין במדריך למפתחים.
Session: ARCore for Jetpack XR משתמש בסביבת זמן הריצה של Jetpack XR מתחת לפני השטח כדי להפעיל את הפונקציונליות שלו. כדי לבצע אינטראקציה עם רוב ממשקי ה-API של ARCore for Jetpack XR, צריך להשתמש ב-Session. לכן, מומלץ לעיין במסמכי התיעוד שלו.
Plane: שימוש במטוסים כדי להבין את העולם שסביבכם. לכל מישור ישLabelשמתאר אותו מבחינה סמנטית. אתם יכולים להשתמש באפשרותsubscribeכדי לקבל התראות על המטוסים האחרונים שזוהו, או באפשרותstateכדי לקבל התראות על שינויים במטוס מסוים.
Anchor: קישור בין אובייקט וירטואלי לבין מיקום בעולם האמיתי. אפשר לצרף עוגנים למיקום ספציפי במרחב (באמצעותcreate) או לTrackable(באמצעותcreateAnchor).אפשר לעשות שימוש חוזר בעוגנים בסשנים שונים. אפשר להשתמש ב-
persistכדי לאחסן אותם, ב-getPersistedAnchorUuidsכדי למנות אותם וב-loadכדי לאחזר אותם. חשוב לוודא שunpersistאותם כשכבר לא משתמשים בהם.אפשר להשתמש באותם עוגנים גם ב-ARCore for Jetpack XR וגם ב-Jetpack SceneCore. אפשר ליצור
AnchorEntityבאמצעות עוגן, או שאם יש לכם AnchorEntity קיים, אתם יכולים להשתמש ב-getAnchorכדי לאחזר את העוגן הבסיסי שלו.להציע אינטראקציות טבעיות עם המשתמשים באמצעות
hitTest. בדיקת פגיעה משתמשת ב-Rayכדי לקבוע אילו תכנים היא חותכת וליצורAnchorמהמיקום הזה. כדאי לשקול לבצע hitTest מ-InputEvent.
בעיות מוכרות
יכול להיות שיהיה עיכוב בין הקריאה ל-
unpersistלבין הסרת ה-UUID שלה מהתוצאות שמוחזרות על ידיgetPersistedAnchorUuids.
createלא יאמת שלמערכת יש מספיק משאבים כדי להחזיר עוגנים חדשים. יצירת כמות גדולה מדי של עוגנים עלולה לגרום לקריסה.בשלב הזה אין תמיכה בשמירה של עוגן שנשמר בעבר ואז בוטלה השמירה שלו.
השימוש באמולטור נתמך, אבל יכול להיות שההתנהגות לא תהיה יציבה כמו בהרצה במכשיר אמיתי. במיוחד, יכול להיות שקריאות ל-
createייכשלו עם שגיאה בקוד Native והפעילות תופסק באופן מיידי.במקרים מסוימים, יכול להיות שיוחזר שגיאה
RuntimeExceptionבאופן שגוי כשקוראים ל-persistעם ההודעה 'העוגן לא נשמר'. במקרים כאלה, הפונקציה עדיין תצליח והעוגן יישמר. כפתרון עקיף, מומלץ להוסיף את הקריאה ל-persistלבלוקtry.