ARCore dla Jetpacka XR umożliwia aplikacjom korzystanie z podstawowych koncepcji rozszerzonej rzeczywistości (AR) przy użyciu prymitywnych funkcji niskiego poziomu do rozpoznawania sceny i śledzenia ruchu. Używaj ARCore w Jetpack XR podczas tworzenia doświadczeń AR, gdy musisz używać danych planarnych lub zakotwiczyć zawartość w konkretnym miejscu w przestrzeni.
Poznawanie cyklu życia Session
Do wszystkich obiektów śledzonych przez ARCore for Jetpack XR można uzyskać dostęp przez Session
. Podobnie jak w przypadku cyklu życia aktywności, obiekty Session
mają też cykl życia, który musi być zgodny z używaniem przez aplikację funkcji obiektu Session
. Jeśli Twoja aplikacja zawiera jedną aktywność z obsługą XR, rozważ zarządzanie cyklem życia Session
za pomocą elementu z obsługą cyklu życia.
Dostęp do Session
Jeśli używasz ARCore w Jetpack XR, musisz utworzyć obiekt Session
.
Jeśli używasz Jetpack Compose na potrzeby XR, kliknij LocalSession
, aby uzyskać dostęp do sesji utworzonej dla Ciebie.
Wznawianie sesji
Sesję należy wznowić, gdy aplikacja będzie gotowa do obsługi zmian stanu z ARCore dla Jetpacka XR. W większości przypadków jest to wykonywane w ramach wywołania zwrotnego onResume()
aktywności, ale aplikacja może opóźnić przetwarzanie do momentu interakcji z użytkownikiem.
Poniższy fragment kodu pokazuje przykład wznowienia sesji.
when (val result = session.resume()) { is SessionResumeSuccess -> { // Session has been created successfully. // Attach any successful handlers here. } is SessionResumePermissionsNotGranted -> { // Request permissions in `result.permissions`. } }
Informacje o przyczynach, dla których nie można wznowić Session
, znajdziesz w artykule SessionResumeResult
.
Wstrzymywanie sesji
Gdy aktywność przejdzie na drugi plan, wstrzymaj Session
za pomocą Session.pause()
. Wstrzymanie sesji powoduje tymczasowe zatrzymanie śledzenia do momentu wznowienia sesji, przy zachowaniu stanu systemu percepcji.
Niszczenie sesji
Aby trwale usunąć Session
, użyj Session.destroy()
. Pozwala to zwolnić zasoby używane przez sesję i zniszczyć wszystkie stany sesji.
Zobacz również
- Praca z punktami kotwicznymi przy użyciu ARCore dla Jetpacka XR
- Praca z samolotami w Jetpack XR z wykorzystaniem ARCore
- Praca z rękami przy użyciu ARCore dla Jetpacka XR