Session আপনার অ্যাপের জন্য স্পেশিয়ালাইজড কার্যকারিতার প্রাথমিক ইন্টারফেস প্রদান করে।
প্রতিটি স্পেশিয়ালাইজড Activity-কে অবশ্যই Session-এর একটি ইনস্ট্যান্স তৈরি করতে এবং ধরে রাখতে হবে। আপনার অ্যাপ সেশন তৈরি করার পরে, এটি প্যানেল বা 3D মডেলের মতো স্পেশিয়ালাইজড কন্টেন্ট এন্টিটি তৈরি করতে
Session ইন্টারফেস ব্যবহার করতে পারে, এর পাশাপাশি
স্পেশিয়াল এনভায়রনমেন্ট সেট করতে, ব্যবহারকারীর পজিশন শনাক্ত করতে এবং বাস্তব জগতে কন্টেন্ট
অ্যাঙ্কর করতে পারে।
Jetpack Compose for XR থেকে সেশন অ্যাক্সেস করা
XR-এর জন্য Jetpack Compose ব্যবহার করার সময়, আপনার জন্য সেশন তৈরি করা হয় এবং LocalSession.current ব্যবহার করে
অ্যাক্সেস করা যায়। নিচের উদাহরণটি দেখুন:
@Composable fun ComposableUsingSession() { val session = LocalSession.current }
Jetpack XR রানটাইম থেকে সেশন অ্যাক্সেস করুন
আপনি Jetpack SceneCore লাইব্রেরি থেকে স্পেশিয়ালাইজড এন্টিটি তৈরি করলে, আপনাকে একটি সেশন তৈরি করতে হবে।
সেশন তৈরি করতে, create() পদ্ধতিতে
Context পাস করুন। এই Context, ইমারসিভ XR ডিভাইস বা মোবাইল ডিভাইসে Activity
অথবা ইন্টেলিজেন্ট আইওয়্যারে প্রোজেক্ট করা প্রসঙ্গ
হতে পারে।
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-এর
লিক হওয়ার সম্ভাবনা থাকতে পারে।
এছাড়াও দেখুন
- স্পেশিয়াল ক্যাপাবিলিটি চেক করুন
- HSM ও FSM-এর মধ্যে ট্রানজিশন
- আপনার অ্যাপে স্পেশিয়াল এনভায়রনমেন্ট যোগ করুন
- আপনার অ্যাপে 3D মডেল যোগ করুন