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

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 और उसके बाद के वर्शन में, विजेट में डिवाइस की थीम के हिसाब से बटन, बैकग्राउंड, और अन्य कॉम्पोनेंट के लिए रंग इस्तेमाल किए जा सकते हैं. इनमें हल्के और गहरे रंग वाली थीम शामिल हैं. इससे अलग-अलग विजेट के बीच आसानी से ट्रांज़िशन किया जा सकता है और उनमें एक जैसा अनुभव मिलता है.

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

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

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

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

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 में बदलाव करना लेख पढ़ें.