Uzamsallaştırılmış kullanıcı arayüzü ve öğeler oluşturma oturumuna erişme

Uygun XR cihazlar
Bu kılavuz, bu tür XR cihazları için deneyimler geliştirmenize yardımcı olur.
XR Kulaklığı
Kablolu XR Gözlükleri

Session, uygulamanız için uzamsallaştırılmış işlevlere yönelik birincil arayüzü sağlar. Uzamsallaştırılmış her Activity, bir Session örneği oluşturmalı ve tutmalıdır. Uygulamanız bir oturum oluşturduktan sonra, panel veya 3D model gibi uzamsallaştırılmış içerik öğeleri oluşturmak, uzamsal bir ortam ayarlamak, kullanıcı konumunu belirlemek ve içeriği gerçek dünyaya sabitlemek için Session arayüzlerini kullanabilir.

Jetpack Compose for XR'dan oturuma erişme

XR için Jetpack Compose kullanılırken oturum sizin için oluşturulur ve LocalSession.current kullanılarak erişilebilir. Aşağıdaki örneğe bakın:

@Composable
fun ComposableUsingSession() {
    val session = LocalSession.current
}

Jetpack XR Çalışma Zamanı'ndan bir oturuma erişme

Jetpack SceneCore kitaplığından uzamsallaştırılmış varlıklar oluşturuyorsanız oturum oluşturmanız gerekir.

Oturum oluşturmak için create() yöntemine bir Context iletin. Bu Context, etkileyici XR cihazlarında veya mobil cihazlarda Activity ya da akıllı gözlüklerde yansıtılan bağlam olabilir.

ARCore oturumu oluşturmak, yüksek maliyetli bir görev olabilir ve aşağıdaki örnekte gösterildiği gibi arka planda işlenmelidir:

lifecycleScope.launch {
    when (val result = Session.create(context)) {
        is SessionCreateSuccess -> {
            val xrSession = result.session
            // ...
        }
        else ->
            TODO(/* A different unhandled exception was thrown. */)
    }
}

create() işlevi, oturumun yaşam döngüsünün farklı bir LifecycleOwner tarafından yönetilmesine olanak tanıyan isteğe bağlı bir LifecycleOwner parametresi kullanabilir. LifecycleOwner, yaşam döngüsünü sağlanan bağlam kapsamında başlatıp sonlandırmalıdır. Aksi takdirde Session sızıntılara açık olabilir.

Aşağıdaki kaynakları da incelemenizi öneririz: