Android 12 में विजेट से जुड़े सुधार

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

वैकल्पिक लेख

पक्का करें कि आपका विजेट, Android 12 के साथ काम करता हो

Android 12 में विजेट के कोने गोल होते हैं. जब Android 12 या इसके बाद के वर्शन वाले डिवाइस पर किसी ऐप्लिकेशन विजेट का इस्तेमाल किया जाता है, तो लॉन्चर अपने-आप विजेट के बैकग्राउंड की पहचान करता है और उसे गोल कोने देने के लिए काटता है.

इस स्थिति में, हो सकता है कि आपका विजेट इनमें से किसी भी स्थिति में ठीक से न दिखे:

  • विजेट के कोनों में कॉन्टेंट है: इस वजह से, कोने वाले हिस्से में मौजूद कुछ कॉन्टेंट काट दिया जा सकता है.

  • विजेट में ऐसे बैकग्राउंड का इस्तेमाल किया गया हो जिसे काटा न जा सके. इसमें, पारदर्शी बैकग्राउंड, खाली व्यू या लेआउट या ऐसा कोई भी खास बैकग्राउंड शामिल है जिसे काटा नहीं जा सकता. ऐसा हो सकता है कि सिस्टम, इस्तेमाल किए जाने वाले बैकग्राउंड की सही पहचान न कर पाए.

अगर इस बदलाव का असर आपके विजेट पर पड़ेगा, तो हमारा सुझाव है कि आप उसे फिर से सेट अप करें. इसके लिए, विजेट के कोनों को गोल करें. इसके बारे में नीचे दिए गए सेक्शन में बताया गया है. इससे यह पक्का किया जा सकेगा कि विजेट सही तरीके से दिखे.

सैंपल का इस्तेमाल करना

इन सभी एपीआई को काम करते हुए देखने के लिए, हमारा सैंपल सूची विजेट देखें.

गोल कोने लागू करना

Android 12 में, विजेट के गोल कोनों की त्रिज्या सेट करने के लिए, system_app_widget_background_radius और system_app_widget_inner_radius सिस्टम पैरामीटर जोड़े गए हैं.

टोक्यो के मौसम की जानकारी देने वाला विजेट
पहली इमेज: विजेट के कोने गोल हैं और विजेट में एक व्यू है

1 विजेट का कोना.

2 विजेट में मौजूद व्यू का कोना.

ज़्यादा जानकारी के लिए, राउंड किए गए कोने लागू करना लेख पढ़ें.

डिवाइस के लिए थीम जोड़ना

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

ज़्यादा जानकारी के लिए, डिवाइस के लिए थीम जोड़ना लेख पढ़ें.

हल्के रंग वाले मोड की थीम में विजेट
दूसरी इमेज: हल्की थीम में विजेट
गहरे रंग वाले मोड की थीम में विजेट
तीसरी इमेज: गहरे रंग वाली थीम में विजेट

विजेट को अपनी पसंद के मुताबिक बनाना आसान बनाना

अगर आपने appwidget-provider के configure एट्रिब्यूट की मदद से कोई कॉन्फ़िगरेशन ऐक्टिविटी तय की है, तो उपयोगकर्ता के विजेट को होम स्क्रीन पर जोड़ने के तुरंत बाद, ऐप्लिकेशन विजेट होस्ट उस ऐक्टिविटी को लॉन्च कर देता है.

Android 12 में नए विकल्प जोड़े गए हैं, ताकि उपयोगकर्ताओं को बेहतर कॉन्फ़िगरेशन अनुभव दिया जा सके. ज़्यादा जानकारी के लिए, उपयोगकर्ताओं को विजेट कॉन्फ़िगर करने की अनुमति दें लेख पढ़ें.

नए कंपाउंड बटन जोड़ना

Android 12 में, मौजूदा कॉम्पोनेंट का इस्तेमाल करके, स्टेटफ़ुल व्यवहार के लिए नई सुविधा जोड़ी गई है:

विजेट अब भी स्टेटलेस है. आपके ऐप्लिकेशन को स्थिति सेव करनी होगी और स्थिति में बदलाव होने वाले इवेंट के लिए रजिस्टर करना होगा.

चौथी इमेज: चेकबॉक्स वाले विजेट का उदाहरण

ज़्यादा जानकारी के लिए, स्टेटफ़ुल व्यवहार के लिए सहायता लेख पढ़ें.

विजेट के साइज़ और लेआउट के लिए बेहतर एपीआई का इस्तेमाल करना

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

ज़्यादा जानकारी के लिए, विजेट के लिए अलग-अलग लेआउट उपलब्ध कराना लेख पढ़ें.

अपने ऐप्लिकेशन के विजेट पिकर का अनुभव बेहतर बनाना

Android 12 की मदद से, विजेट पिकर के अनुभव को बेहतर बनाया जा सकता है. इसके लिए, विजेट की डाइनैमिक झलक और विजेट के ब्यौरे जोड़ें. ज़्यादा जानकारी के लिए, विजेट पिकर में, स्केल किए जा सकने वाले विजेट की झलक जोड़ना और अपने विजेट के लिए ब्यौरा जोड़ना लेख पढ़ें.

बेहतर ट्रांज़िशन की सुविधा चालू करना

Android 12 से, जब कोई उपयोगकर्ता किसी विजेट से आपका ऐप्लिकेशन लॉन्च करता है, तो लॉन्चर आसानी से ट्रांज़िशन करते हैं. ज़्यादा जानकारी के लिए, बेहतर ट्रांज़िशन चालू करना लेख पढ़ें.

आसान बनाए गए RemoteViews कलेक्शन का इस्तेमाल करना

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

ज़्यादा जानकारी के लिए, RemoteViews कलेक्शन का इस्तेमाल करना लेख पढ़ें.

RemoteViews के रनटाइम में बदलाव का इस्तेमाल करना

Android 12 में RemoteViews एट्रिब्यूट के लिए, रनटाइम में बदलाव करने की सुविधा देने वाले कई RemoteViews तरीके जोड़े गए हैं. जोड़े गए तरीकों की पूरी सूची के लिए, RemoteViews एपीआई रेफ़रंस देखें.

ज़्यादा जानकारी के लिए, RemoteViews के रनटाइम में बदलाव करने की सुविधा का इस्तेमाल करना लेख पढ़ें.