উইজেট আবিষ্কারযোগ্যতা

Android 8.0 (API স্তর 26) এবং উচ্চতর চলমান ডিভাইসগুলিতে, ব্যবহারকারীদের পিন করা শর্টকাট তৈরি করতে দেয় এমন লঞ্চারগুলি তাদের হোম স্ক্রিনে উইজেটগুলি পিন করতে দেয়৷ পিন করা শর্টকাটের মতো, এই পিন করা উইজেটগুলি ব্যবহারকারীদের আপনার অ্যাপের নির্দিষ্ট কাজগুলিতে অ্যাক্সেস দেয় এবং অ্যাপ থেকে সরাসরি হোম স্ক্রিনে যোগ করা যেতে পারে, যেমনটি নিম্নলিখিত ভিডিওতে দেখানো হয়েছে।

প্রতিক্রিয়াশীল বিন্যাসের উদাহরণ
চিত্র 2. একটি উইজেট পিন করার উদাহরণ।

ব্যবহারকারীদের একটি উইজেট পিন করতে দিন

আপনার অ্যাপে, আপনি নিম্নলিখিত পদক্ষেপগুলি সম্পূর্ণ করে একটি সমর্থিত লঞ্চারে একটি উইজেট পিন করার জন্য সিস্টেমের জন্য একটি অনুরোধ তৈরি করতে পারেন:

  1. আপনার অ্যাপের ম্যানিফেস্ট ফাইলে আপনি একটি উইজেট ঘোষণা করেছেন তা নিশ্চিত করুন।

  2. নিম্নলিখিত কোড স্নিপেটে দেখানো হিসাবে, requestPinAppWidget() পদ্ধতিতে কল করুন:

কোটলিন

val appWidgetManager = AppWidgetManager.getInstance(context)
val myProvider = ComponentName(context, ExampleAppWidgetProvider::class.java)

if (appWidgetManager.isRequestPinAppWidgetSupported()) {
    // Create the PendingIntent object only if your app needs to be notified
    // when the user chooses to pin the widget. Note that if the pinning
    // operation fails, your app isn't notified. This callback receives the ID
    // of the newly pinned widget (EXTRA_APPWIDGET_ID).
    val successCallback = PendingIntent.getBroadcast(
            /* context = */ context,
            /* requestCode = */ 0,
            /* intent = */ Intent(...),
            /* flags = */ PendingIntent.FLAG_UPDATE_CURRENT)

    appWidgetManager.requestPinAppWidget(myProvider, null, successCallback)
}

জাভা

AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(context);
ComponentName myProvider = new ComponentName(context, ExampleAppWidgetProvider.class);

if (appWidgetManager.isRequestPinAppWidgetSupported()) {
    // Create the PendingIntent object only if your app needs to be notified
    // when the user chooses to pin the widget. Note that if the pinning
    // operation fails, your app isn't notified. This callback receives the ID
    // of the newly pinned widget (EXTRA_APPWIDGET_ID).
    PendingIntent successCallback = PendingIntent.getBroadcast(
            /* context = */ context,
            /* requestCode = */ 0,
            /* intent = */ new Intent(...),
            /* flags = */ PendingIntent.FLAG_UPDATE_CURRENT);

    appWidgetManager.requestPinAppWidget(myProvider, null, successCallback);
}

ব্যবহারকারীরা উইজেট পিকারের মাধ্যমে বা আপনার অ্যাপের মধ্যে থেকে আপনার উইজেট আবিষ্কার করে এবং যোগ করে যখন উইজেটের কার্যকারিতা সবচেয়ে প্রাসঙ্গিক হয়। আরও তথ্যের জন্য, আবিষ্কার এবং প্রচার দেখুন।