स्मार्टवॉच पर सूचनाएं पाने के लिए, फ़ोन पर सूचनाएं पाने के लिए इस्तेमाल किए जाने वाले एपीआई का ही इस्तेमाल किया जाता है. साथ ही, इनका स्ट्रक्चर भी एक जैसा होता है.
स्मार्टवॉच पर सूचनाएं दो तरह से दिख सकती हैं:
- मोबाइल ऐप्लिकेशन एक सूचना बनाता है और सिस्टम उस सूचना को स्मार्टवॉच पर अपने-आप भेज देता है.
- वियरेबल डिवाइस पर मौजूद ऐप्लिकेशन, सूचना बनाता है.
दोनों ही स्थितियों में, सूचनाएं बनाने के लिए NotificationCompat.Builder क्लास का इस्तेमाल करें. बिल्डर क्लास की मदद से सूचनाएं बनाने पर, सिस्टम सूचनाओं को सही तरीके से दिखाने का काम करता है. उदाहरण के लिए, जब मोबाइल ऐप्लिकेशन से कोई सूचना भेजी जाती है, तो हर सूचना, सूचना स्ट्रीम में एक कार्ड के तौर पर दिखती है.
सूचनाएं कैसे दिखती हैं, यह देखने के लिए यहां दिया गया उदाहरण देखें.
पहली इमेज. फ़ोन और स्मार्टवॉच पर एक ही सूचना दिख रही है.
सबसे अच्छे नतीजों के लिए, NotificationCompat.Style
सबक्लास में से किसी एक का इस्तेमाल करें.
ध्यान दें:
RemoteViews का इस्तेमाल करने पर,
सूचनाओं से कस्टम लेआउट हट जाते हैं. साथ ही, पहनने लायक डिवाइस पर सिर्फ़ टेक्स्ट और आइकॉन दिखते हैं.
पहने जाने वाले डिवाइसों के लिए, सूचनाएं पाने का सुझाव
सभी सूचनाओं के लिए, बड़े किए जा सकने वाले सूचना फ़ॉर्मैट का इस्तेमाल करें. इससे, स्मार्टवॉच इस्तेमाल करने वाले लोगों को जोड़े रखने में मदद मिलती है. सूचना ट्रे में, कम शब्दों में जानकारी दिखाने के लिए सूचना को छोटा करके दिखाया जाता है. जब उपयोगकर्ता इस पर टैप करता है, तो सूचना बड़ी हो जाती है. इसमें अतिरिक्त कॉन्टेंट और कार्रवाइयों को स्क्रोल किया जा सकता है.
NotificationCompat.Style
सबक्लास का इस्तेमाल करके, मोबाइल की तरह ही बड़ी की जा सकने वाली सूचना बनाएं. उदाहरण के लिए, NotificationCompat.MessagingStyle का इस्तेमाल करके बनाई गई स्टैंडर्ड सूचना इस तरह दिखती है:
दूसरी इमेज. Wear OS पर MessagingStyle सूचना का उदाहरण.
आपको सूचना में कई कार्रवाइयां दिख सकती हैं. ये कार्रवाइयां, सूचना को बड़ा करने पर सबसे नीचे दिखती हैं.
अहम जानकारी: अगर आपकी सूचनाओं में "जवाब दें" कार्रवाई शामिल है, जैसे कि मैसेजिंग ऐप्लिकेशन के लिए, तो सूचना के व्यवहार को बेहतर बनाया जा सकता है. उदाहरण के लिए, सीधे तौर पर पहने जाने वाले डिवाइस से, आवाज़ से जवाब देने की सुविधा चालू की जा सकती है. इसके अलावा, setChoices() की मदद से, पहले से तय किए गए टेक्स्ट वाले जवाब देने की सुविधा भी चालू की जा सकती है.
ज़्यादा जानकारी के लिए, जवाब देने का बटन जोड़ना लेख पढ़ें.
डुप्लीकेट सूचनाएं पाने से बचें
डिफ़ॉल्ट रूप से, सूचनाएं कंपैनियन फ़ोन ऐप्लिकेशन से कनेक्ट की गई सभी स्मार्टवॉच पर भेजी जाती हैं. अगर आपने कोई Wearable ऐप्लिकेशन इंस्टॉल नहीं किया है, तो यह एक बेहतरीन विकल्प है.
हालांकि, अगर आपने स्मार्टवॉच के लिए स्टैंडअलोन ऐप्लिकेशन और फ़ोन के लिए कंपैनियन ऐप्लिकेशन बनाया है, तो ये ऐप्लिकेशन डुप्लीकेट सूचनाएं भेजते हैं.
Wear OS, ब्रिजिंग एपीआई की मदद से डुप्लीकेट सूचनाएं पाने की सुविधा बंद करने का तरीका उपलब्ध कराता है. यह खास तौर पर उन डिवाइसों पर मौजूद ऐप्लिकेशन के लिए ज़रूरी है जिन पर Wear OS 5 या इसके बाद का वर्शन चलता है. ऐसा इसलिए, क्योंकि मोबाइल डिवाइस पर खारिज की जा सकने वाली कुछ सूचनाएं, Wear OS डिवाइस पर खारिज नहीं की जा सकतीं. ज़्यादा जानकारी के लिए, सूचनाओं के लिए ब्रिजिंग के विकल्प लेख पढ़ें.
सूचना में, पहनने लायक डिवाइसों के लिए खास सुविधाएं जोड़ना
अगर आपको किसी सूचना में, पहनने लायक डिवाइस के लिए खास तौर पर बनाई गई सुविधाएं जोड़नी हैं, तो NotificationCompat.WearableExtender क्लास का इस्तेमाल करके विकल्प तय किए जा सकते हैं. जैसे, पहनने लायक डिवाइस पर सूचना में ऐप्लिकेशन का आइकॉन छिपाना या लोगों को बोलकर टेक्स्ट जवाब देने की सुविधा देना.
इस एपीआई का इस्तेमाल करने के लिए, यह तरीका अपनाएं:
-
WearableExtenderका एक इंस्टेंस बनाएं. साथ ही, सूचना के लिए, पहने जाने वाले डिवाइस से जुड़े विकल्प सेट करें. -
NotificationCompat.Builderका एक इंस्टेंस बनाएं. साथ ही, इस गाइड में पहले बताए गए तरीके के मुताबिक, अपनी सूचना के लिए ज़रूरी प्रॉपर्टी सेट करें. -
सूचना पर मौजूद,
extend()पर कॉल करें औरWearableExtenderपास करें. इससे, सूचना पर पहने जाने वाले डिवाइस के विकल्प लागू हो जाते हैं. -
सूचना बनाने के लिए,
build()को कॉल करें.
ध्यान दें:
अगर फ़्रेमवर्क के NotificationManager का इस्तेमाल किया जाता है, तो
NotificationCompat.WearableExtender की कुछ सुविधाएं काम नहीं करती हैं. इसलिए,
NotificationCompat का इस्तेमाल करना न भूलें.
उपयोगकर्ता के सभी डिवाइसों पर, सूचनाएं खारिज करने या रद्द करने की सुविधा को सिंक किया जा सकता है. किसी सूचना को खारिज करने की जानकारी सिंक करने के लिए,
setDismissalId() तरीके का इस्तेमाल करें. हर सूचना के लिए, setDismissalId() को कॉल करते समय, दुनिया भर में यूनीक आईडी को स्ट्रिंग के तौर पर पास करें. सूचना खारिज होने पर, एक ही डिसमिसल आईडी वाली अन्य सभी सूचनाएं, स्मार्टवॉच और कंपैनियन फ़ोन पर खारिज हो जाती हैं. खारिज किए गए अनुरोध का आईडी वापस पाने के लिए,
getDismissalId() का इस्तेमाल करें.
सिर्फ़ स्मार्टवॉच पर की जा सकने वाली कार्रवाइयां तय करना
अगर आपको स्मार्टवॉच और फ़ोन पर अलग-अलग कार्रवाइयां करनी हैं, तो
WearableExtender.addAction() का इस्तेमाल करें. इस तरीके से कोई कार्रवाई जोड़ने के बाद, पहने जाने वाले डिवाइस पर
NotificationCompat.Builder.addAction() का इस्तेमाल करके जोड़ी गई कोई अन्य कार्रवाई नहीं दिखती. WearableExtender.addAction() की मदद से जोड़ी गई कार्रवाइयां, सिर्फ़ पहनने लायक डिवाइस पर दिखती हैं. ये फ़ोन पर नहीं दिखतीं.
पहने जाने वाले डिवाइस से फ़ोन ऐप्लिकेशन लॉन्च करना
ब्रिज की गई सूचनाओं का इस्तेमाल करने पर, हर सूचना में फ़ोन पर ऐप्लिकेशन लॉन्च करने के लिए एक बटन अपने-आप शामिल हो जाता है. हालांकि, अगर आपको घड़ी पर बनाई गई स्थानीय सूचना का इस्तेमाल करना है, तो फ़ोन पर ऐप्लिकेशन लॉन्च करने वाला बटन बनाने के लिए, यह तरीका अपनाएं:
ConfirmationActivityको बढ़ाने वाला नयाActivityबनाएं.- फ़ोन ऐप्लिकेशन लॉन्च करने के लिए, नए
ActivityमेंRemoteActivityHelperका इस्तेमाल करें. - सूचना से
Activityलॉन्च करने के लिएIntentबनाते समय,EXTRA_ANIMATION_TYPEएक्स्ट्रा कोOPEN_ON_PHONE_ANIMATIONपर सेट करें.
ध्यान दें: सूचना देने की कार्रवाई के लिए, BroadcastReceiver को टारगेट के तौर पर इस्तेमाल नहीं किया जा सकता.