सभी इनकमिंग नोटिफिकेशन पढ़ना (NotificationListenerService)
यह आर्टिकल पिछले आर्टिकल के समान है - NotificationListenerService का उपयोग करके सिस्टम-व्यापी नोटिफिकेशन मॉनिटरिंग।
कोड संरचना समान है (ID: 1005061542 देखें)
- MyListener इंटरफेस
- NotificationService (NotificationListenerService एक्सटेंड करता है)
- MainActivity (MyListener इंप्लीमेंट करता है)
- Manifest में सर्विस डिक्लेरेशन + BIND_NOTIFICATION_LISTENER_SERVICE परमिशन
अतिरिक्त क्षमताएं
मौजूदा नोटिफिकेशन पढ़ें (Android 11+)
StatusBarNotification[] active = getActiveNotifications();
for (StatusBarNotification sbn : active) {
Notification notif = sbn.getNotification();
Bundle extras = notif.extras;
String title = extras.getString(Notification.EXTRA_TITLE);
String text = extras.getString(Notification.EXTRA_TEXT);
// प्रोसेस करें...
}
नोटिफिकेशन कैंसिल करें
// किसी ऐप का नोटिफिकेशन हटाने के लिए cancelNotification(sbn.getPackageName(), sbn.getTag(), sbn.getId());
नोटिफिकेशन कंटेंट से डेटा निकालें
Bundle extras = sbn.getNotification().extras; String title = extras.getString(Notification.EXTRA_TITLE, ""); String text = extras.getCharSequence(Notification.EXTRA_TEXT, "").toString(); CharSequence[] lines = extras.getCharSequenceArray(Notification.EXTRA_TEXT_LINES); // बड़े टेक्स्ट के लिए String bigText = extras.getString(Notification.EXTRA_BIG_TEXT, "");
उपयोग के मामले
- नोटिफिकेशन हिस्ट्री/लॉग ऐप
- स्मार्ट रिप्लाई/ऑटो-रिप्लाई बॉट
- पैरेंटल कंट्रोल / मॉनिटरिंग
- नोटिफिकेशन फिल्टरिंग / म्यूटिंग
- वियरेबल्स के लिए फॉरवर्डिंग
सीमाएं
- यूजर परमिशन आवश्यक (सेटिंग्स में मैन्युअल)
- कुछ OEM (सैमसंग, शाओमी) बैटरी ऑप्टिमाइजेशन में सर्विस मार सकते हैं
- फोरग्राउंड सर्विस के रूप में चलाने की सलाह
- प्ले स्टोर समीक्षा सख्त