ARCore ל-Jetpack XR מאפשר לאפליקציות לפעול עם מושגים בסיסיים של מציאות מוגברת (AR), באמצעות פרימיטיבים ברמה נמוכה של הבנת סצנה ומעקב אחר תנועה. כדאי להשתמש ב-ARCore for Jetpack XR כשאתם יוצרים חוויות AR, ואתם צריכים להשתמש בנתונים שטחיים או לתקוע תוכן למיקום קבוע במרחב.
הסבר על מחזור החיים של Session
צריך לגשת לכל האובייקטים שבמעקב של ARCore ל-Jetpack XR דרך Session
. בדומה למחזור החיים של פעילות, גם לאובייקטים מסוג Session
יש מחזור חיים שצריך לתחזק בהתאם לשימוש של האפליקציה בתכונות של אובייקט Session
. אם האפליקציה מכילה פעילות אחת שתומכת ב-XR, מומלץ לטפל במחזור החיים של Session
באמצעות רכיב שמתחשב במחזור החיים.
גישה ל-Session
צריך ליצור Session
כשמשתמשים ב-ARCore ל-Jetpack XR.
כשמשתמשים ב-Jetpack Compose for XR, משתמשים ב-LocalSession
כדי לגשת לסשן שנוצר בשבילכם.
המשך סשן
צריך להמשיך את הסשן כשהאפליקציה מוכנה לטפל בשינויי המצב מ-ARCore ל-Jetpack XR. במקרים רבים, הפעולה הזו מתבצעת בקריאה החוזרת (callback) של onResume()
בפעילות, אבל יכול להיות שתרצו לדחות את העיבוד עד לאינטראקציה של המשתמש.
קטע הקוד הבא מציג דוגמה להמשך סשן.
when (val result = session.resume()) { is SessionResumeSuccess -> { // Session has been created successfully. // Attach any successful handlers here. } is SessionResumePermissionsNotGranted -> { // Request permissions in `result.permissions`. } }
במאמר SessionResumeResult
מפורטות הסיבות האפשריות לכך שאי אפשר להמשיך את Session
.
השהיה של סשן
כשהפעילות עוברת לרקע, משהים את Session
באמצעות [Session.pause()
][Session.pause]. השהיה של סשן מפסיקה את המעקב באופן זמני עד להמשך הסשן, תוך שמירה על המצב של מערכת התפיסה.
השמדת סשן
כדי למחוק לתמיד את Session
, משתמשים ב-[Session.destroy()
][Session.destroy]. הפעולה הזו משחררת משאבים שנמצאים בשימוש בסשן ומוחקת את כל מצבי הסשן.
למידע נוסף
- עבודה עם נקודות עגינה באמצעות ARCore ל-Jetpack XR
- עבודה עם מטוסים באמצעות ARCore ל-Jetpack XR
- עבודה עם הידיים באמצעות ARCore ל-Jetpack XR