ה-Session מספק את הממשק העיקרי לפונקציונליות המרחבית של האפליקציה. כל Activity מרחבי צריך ליצור ולהחזיק מופע של Session. אחרי שהאפליקציה יוצרת סשן, היא יכולה להשתמש בממשקי Session כדי ליצור ישויות תוכן מרחביות כמו חלוניות או מודלים תלת-ממדיים, וגם להגדיר סביבה מרחבית, לזהות את מיקום המשתמש ולעגן תוכן בעולם האמיתי.
גישה לסשן מ-Jetpack Compose for XR
כשמשתמשים ב-Jetpack Compose for XR, המערכת יוצרת את הסשן בשבילכם, ואפשר לגשת אליו באמצעות LocalSession.current. דוגמה:
@Composable fun ComposableUsingSession() { val session = LocalSession.current }
גישה לסשן מ-Jetpack XR Runtime
אם אתם יוצרים ישויות מרחביות מהספרייה Jetpack SceneCore, תצטרכו ליצור סשן.
כדי ליצור סשן, מעבירים Context אל ה-method create(). הContext יכול להיות Activity במכשירי XR או במכשירים ניידים, או הקשר מוקרן.
יצירת סשן של ARCore יכולה להיות משימה יקרה, ולכן צריך לעבד אותה ברקע, כמו בדוגמה הבאה:
lifecycleScope.launch { when (val result = Session.create(context)) { is SessionCreateSuccess -> { val xrSession = result.session // ... } else -> TODO(/* A different unhandled exception was thrown. */) } }
כשפעילות של סשן מסתיימת, כל ממשק המשתמש המרחבי ותוכן התלת-ממד שמשויכים לסשן הזה מסתיימים, והסשן כבר לא תקף.
עוד באותו הקשר
- בדיקת יכולות מרחביות
- מעבר בין HSM ל-FSM
- הוספת סביבות מרחביות לאפליקציה
- הוספת מודלים תלת-ממדיים לאפליקציה