بهبود دادن تجربه برنامه‌ها با درک ازطریق ARCore برای Jetpack XR

دستگاه‌های XR واجدشرایط
این راهنمایی به شما کمک می‌کند برای این نوع دستگاه‌های واقعیت گسترده تجربه بسازید.
هدست‌های واقعیت گسترده
عینک واقعیت گسترده سیمی
عینک
نمایشگردار و صوتی

ARCore برای Jetpack XR قابلیت‌های درک قدرتمندی را برای برنامه شما به‌ارمغان می‌آورد تا دنیای واقعی را ازطریق انواع میاناهای برنامه‌سازی کاربردی درک کند. برخی‌از این میاناهای برنامه‌سازی کاربردی به شما کمک می‌کنند تا تجربه‌های فراگیر را برای دستگاه‌هایی مانند هدست‌های واقعیت گسترده و عینک‌های واقعیت گسترده سیمی بهبود بخشید، برخی به شما کمک می‌کنند تا تجربه‌های افزوده را برای دستگاه‌هایی مانند عینک‌های هوش مصنوعی بهبود بخشید، و برخی به شما کمک می‌کنند تا تجربه‌های برنامه را برای انواع دستگاه‌های Android XR بهبود بخشید.

برای مثال، می‌توانید از ARCore برای Jetpack XR برای بازیابی داده‌های مسطح، لنگر انداختن محتوا به یک مکان ثابت در فضا، یا استفاده از یک حالت جغرافیایی برای لنگر انداختن محتوا به یک مکان واقعی استفاده کنید.

افزودن وابستگی‌های کتابخانه

قبل‌از شروع استفاده از ویژگی‌های ادراک در برنامه XR، بسته به نوع تجربه‌های برنامه که با واقعیت افزوده بهبود می‌دهید، وابستگی‌های لازم را اضافه کنید.

دسترسی به جلسه

ویژگی‌های ادراک در ARCore برای Jetpack XR به Session متکی است که از Jetpack XR Runtime استفاده می‌کند.

نحوه دسترسی برنامه شما به جلسه به انواع تجربه‌های برنامه بستگی دارد که با ویژگی‌های ادراک بهبود می‌دهید:

ایجاد جلسه بااستفاده از Jetpack XR Runtime

برای ایجاد جلسه، Context را به روش 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. */)
    }
}

تابع create() می‌تواند از پارامتر اختیاری LifecycleOwner استفاده کند که به LifecycleOwner دیگری اجازه می‌دهد چرخه حیات جلسه را مدیریت کند. LifecycleOwner باید چرخه حیات خود را در محدوده بافت ارائه‌شده شروع و پایان دهد، درغیراین‌صورت Session ممکن است مستعد نشت باشد.

پیکربندی جلسه

ممکن است برخی‌از ویژگی‌ها به‌طور پیش‌فرض غیرفعال باشند و برای عملکرد باید پیکربندی شوند. برای پیکربندی جلسه، از configure() استفاده کنید و گزینه‌های پیکربندی موردنیاز Session را مشخص کنید. برای جزئیات درباره پیکربندی موردنیاز برای ویژگی‌های مختلف واقعیت افزوده، به صفحه‌های مربوطه برای هر ویژگی واقعیت افزوده مراجعه کنید.

مراحل بعدی

پس‌از اینکه برنامه‌تان جلسه‌ای داشت، روش‌هایی را که می‌توانید از آن برای بهبود تجربه‌های برنامه برای دستگاه‌های مختلف «واقعیت گسترده» استفاده کنید کاوش کنید: