Android 12 (एपीआई लेवल 31) में, मौजूदा Widgets API को बेहतर बनाया गया है. इससे प्लैटफ़ॉर्म और लॉन्चर में, उपयोगकर्ता और डेवलपर के अनुभव को बेहतर बनाया जा सकेगा. इस गाइड का इस्तेमाल करके, यह जानें कि आपका विजेट Android 12 के साथ काम करता है या नहीं. साथ ही, अपने मौजूदा विजेट को रीफ़्रेश करने के लिए, एपीआई के बारे में जानकारी पाएं.
पक्का करें कि आपका विजेट, Android 12 के साथ काम करता हो
Android 12 में विजेट के कोने गोल होते हैं. Android 12 या इसके बाद के वर्शन पर काम करने वाले डिवाइस पर किसी ऐप्लिकेशन विजेट का इस्तेमाल करने पर, लॉन्चर अपने-आप विजेट के बैकग्राउंड का पता लगाता है और उसे काटकर गोल कोनों वाला बना देता है.
इस स्थिति में, आपका विजेट इन दोनों स्थितियों में ठीक से नहीं दिख सकता:
विजेट के कोनों में कॉन्टेंट मौजूद है: इससे कोने वाले हिस्से में मौजूद कुछ कॉन्टेंट कट सकता है.
विजेट में ऐसे बैकग्राउंड का इस्तेमाल किया जाता है जिसे काटा नहीं जा सकता. इसमें पारदर्शी बैकग्राउंड, खाली व्यू या लेआउट या किसी अन्य तरह का खास बैकग्राउंड शामिल है जिसे काटा नहीं जा सकता. सिस्टम, इस्तेमाल किए जाने वाले बैकग्राउंड की सही पहचान नहीं कर पाएगा.
अगर इस बदलाव का असर आपके विजेट पर पड़ेगा, तो हमारा सुझाव है कि आप उसे गोल कोनों के साथ रीफ़्रेश करें. इसके बारे में अगले सेक्शन में बताया गया है. इससे यह पक्का किया जा सकेगा कि विजेट सही तरीके से दिखे.
सैंपल का इस्तेमाल करना
इन सभी एपीआई को काम करते हुए देखने के लिए, हमारा सैंपल लिस्ट विजेट देखें.
गोल कोनों को लागू करना
Android 12 में, system_app_widget_background_radius
और system_app_widget_inner_radius
सिस्टम पैरामीटर पेश किए गए हैं. इनकी मदद से, अपने विजेट के गोल कोनों के रेडियस सेट किए जा सकते हैं.

1 विजेट का कोना.
2 विजेट में मौजूद व्यू का कोना.
ज़्यादा जानकारी के लिए, गोल कोनों को लागू करना लेख पढ़ें.
डिवाइस के हिसाब से थीम जोड़ने की सुविधा
Android 12 और इसके बाद के वर्शन में, विजेट में डिवाइस की थीम के रंगों का इस्तेमाल किया जा सकता है. जैसे, बटन, बैकग्राउंड, और अन्य कॉम्पोनेंट के लिए. इनमें हल्के और गहरे रंग वाली थीम शामिल हैं. इससे अलग-अलग विजेट के बीच आसानी से ट्रांज़िशन किया जा सकता है और उनमें एक जैसा अनुभव मिलता है.
ज़्यादा जानकारी के लिए, डिवाइस के हिसाब से थीम जोड़ना लेख पढ़ें.


विजेट को अपनी पसंद के मुताबिक बनाना आसान हो जाता है
अगर आपने configure
एट्रिब्यूट के साथ कॉन्फ़िगरेशन गतिविधि के लिए appwidget-provider
वैल्यू सेट की है, तो उपयोगकर्ता के होम स्क्रीन पर विजेट जोड़ने के तुरंत बाद, ऐप्लिकेशन विजेट होस्ट उस गतिविधि को लॉन्च कर देता है.
Android 12 में नए विकल्प जोड़े गए हैं. इनकी मदद से, उपयोगकर्ताओं को कॉन्फ़िगरेशन का बेहतर अनुभव दिया जा सकता है. ज़्यादा जानकारी के लिए, उपयोगकर्ताओं को विजेट कॉन्फ़िगर करने की अनुमति देना लेख पढ़ें.
नए कंपाउंड बटन जोड़ना
Android 12 में, इन मौजूदा कॉम्पोनेंट का इस्तेमाल करके, स्टेटफ़ुल व्यवहार के लिए नया सपोर्ट जोड़ा गया है:
विजेट अब भी स्टेटलेस है. आपका ऐप्लिकेशन, स्थिति को सेव करता हो और स्थिति में बदलाव होने पर सूचना पाने के लिए रजिस्टर करता हो.

ज़्यादा जानकारी के लिए, स्टेटफ़ुल व्यवहार के लिए सहायता लेख पढ़ें.
विजेट के साइज़ और लेआउट के लिए बेहतर एपीआई का इस्तेमाल करना
Android 12 और इसके बाद के वर्शन में, साइज़ एट्रिब्यूट को बेहतर तरीके से इस्तेमाल किया जा सकता है. साथ ही, लेआउट को ज़्यादा लचीला बनाया जा सकता है. इसके लिए, विजेट के साइज़ से जुड़ी अतिरिक्त शर्तें तय करें. साथ ही, अडैप्टिव लेआउट और सटीक लेआउट उपलब्ध कराएं.
ज़्यादा जानकारी के लिए, विजेट के फ़्लेक्सिबल लेआउट उपलब्ध कराना लेख पढ़ें.
ऐप्लिकेशन के विजेट पिकर के अनुभव को बेहतर बनाना
Android 12 की मदद से, अपने ऐप्लिकेशन के लिए विजेट पिकर के अनुभव को बेहतर बनाया जा सकता है. इसके लिए, डाइनैमिक विजेट की झलक और विजेट के ब्यौरे जोड़े जा सकते हैं. ज़्यादा जानकारी के लिए, विजेट चुनने वाले टूल में, स्केल किए जा सकने वाले विजेट की झलक जोड़ना और अपने विजेट के लिए ब्यौरा जोड़ना लेख पढ़ें.
बेहतर ट्रांज़िशन की सुविधा चालू करना
Android 12 से, लॉन्चर बेहतर ट्रांज़िशन उपलब्ध कराते हैं. ऐसा तब होता है, जब कोई उपयोगकर्ता किसी विजेट से आपका ऐप्लिकेशन लॉन्च करता है. ज़्यादा जानकारी के लिए, स्मूद ट्रांज़िशन चालू करना लेख पढ़ें.
RemoteViews
कलेक्शन के आसान वर्शन का इस्तेमाल करना
Android 12 में setRemoteAdapter(int viewId, RemoteViews.RemoteCollectionItems items)
तरीका जोड़ा गया है. इसकी मदद से, आपका ऐप्लिकेशन ListView
को भरते समय, सीधे तौर पर कलेक्शन पास कर सकता है. पहले, ListView
का इस्तेमाल करते समय, RemoteViewsFactory
को वापस लाने के लिए, ListView
को लागू करना और उसका एलान करना ज़रूरी था.RemoteViewsService
ज़्यादा जानकारी के लिए, RemoteViews
कलेक्शन का इस्तेमाल करना लेख पढ़ें.
RemoteViews
के रनटाइम में बदलाव करने की सुविधा का इस्तेमाल करना
Android 12 में कई RemoteViews
तरीके जोड़े गए हैं. इनकी मदद से, रनटाइम के दौरान RemoteViews
एट्रिब्यूट में बदलाव किया जा सकता है. जोड़े गए तरीकों की पूरी सूची देखने के लिए, RemoteViews
एपीआई का रेफ़रंस
देखें.
ज़्यादा जानकारी के लिए, RemoteViews
में रनटाइम के दौरान बदलाव करना लेख पढ़ें.