Android 8.0 (API লেভেল 26) ও এর পরের যেকোনও ভার্সনে, আপনি ব্যবহারকারীদের আপনার অ্যাপের মধ্যে তাদের হোম স্ক্রিনে আপনার উইজেট পিন করতে দিতে পারবেন। আপনার অ্যাপের মধ্যে সরাসরি উইজেট প্রচার করা ব্যবহারকারীর এনগেজমেন্ট বাড়ানোর একটি দুর্দান্ত উপায়, বিশেষ করে কোনও ব্যবহারকারী সম্পর্কিত টাস্ক সম্পূর্ণ করার পরে অথবা কোনও ব্যবহারকারী আপনার অ্যাপের কোনও ফিচার বারবার অ্যাক্সেস করলে।
পিন পাওয়ার অনুরোধ করা
উইজেট পিনিং শুরু করতে, GlanceAppWidgetManager ক্লাসের
requestPinGlanceAppWidget পদ্ধতি ব্যবহার করুন। Android-এর পুরনো ভার্সনে
চলমান অ্যাপের জন্য, এটি false রিটার্ন করে। তবে, অনুরোধটি সিস্টেমে সফলভাবে পাঠানো হলে
এটি true রিটার্ন করে।
আপনি কীভাবে পিন অনুরোধ তৈরি করতে পারেন তার একটি উদাহরণ এখানে দেওয়া হল:
@Composable fun AnInAppComposable() { val context = LocalContext.current val coroutineScope = rememberCoroutineScope() Button( onClick = { coroutineScope.launch { GlanceAppWidgetManager(context).requestPinGlanceAppWidget( receiver = MyWidgetReceiver::class.java, preview = MyWidget(), previewState = DpSize(245.dp, 115.dp) ) } } ) {} }
এই উদাহরণে, MyWidgetReceiver হল সেই ক্লাস যা উইজেটের
কলব্যাক পায় এবং MyWidget হল সেই Glance উইজেট যা আপনি পিন করতে চান। successCallback হল একটি PendingIntent যা উইজেট সফলভাবে
পিন করা হলে ট্রিগার হয়।
পিন অনুরোধের উত্তর ম্যানেজ করা
ব্যবহারকারী পিন অনুরোধের ডায়ালগে উত্তর দিলে, আপনার অ্যাপ একটি
উত্তর পায়। ব্যবহারকারী অনুরোধ গ্রহণ করলে, আপনার উইজেট তার
হোম স্ক্রিনে পিন করা হয় এবং successCallback PendingIntent ট্রিগার হয়। ব্যবহারকারী অনুরোধ প্রত্যাখ্যান করলে, কিছু হয় না।
এটি মনে রাখা গুরুত্বপূর্ণ যে, হোম স্ক্রিনে উইজেট সঠিকভাবে যোগ করা হলেই শুধুমাত্র successCallback ট্রিগার করা হয়।
ব্যবহারকারী অনুরোধ প্রত্যাখ্যান করলে অথবা লঞ্চারে পিন করার সুবিধা না থাকলে এটি ট্রিগার হয় না।