Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Android

मैं एंड्रॉइड में स्टेटस बार नोटिफिकेशन को कैसे रोक सकता हूं?

<घंटा/>

यह उदाहरण इस बारे में प्रदर्शित करता है कि मैं एंड्रॉइड में स्टेटस बार नोटिफिकेशन को कैसे इंटरसेप्ट कर सकता हूं

चरण 1 - एंड्रॉइड स्टूडियो में एक नया प्रोजेक्ट बनाएं, फाइल ⇒ न्यू प्रोजेक्ट पर जाएं और एक नया प्रोजेक्ट बनाने के लिए सभी आवश्यक विवरण भरें।

चरण 2 - निम्न कोड को src/MyListener.java

में जोड़ें
सार्वजनिक इंटरफ़ेस MyListener { void setValue (String packageName);}

चरण 3 - निम्न कोड को src/MyListener.java

में जोड़ें
पैकेज app.tutorialspoint.com.notifyme;import android.content.Context;import android.service.notification.NotificationListenerService;import android.service.notification.StatusBarNotification;import android.util.Log;पब्लिक क्लास नोटिफिकेशन सर्विस नोटिफिकेशन लिस्टनर सर्विस का विस्तार करती है { निजी स्ट्रिंग टैग =यह .getClass().getSimpleName(); प्रसंग संदर्भ; स्थिर MyListener myListener; @Override सार्वजनिक शून्य onCreate () { सुपर .onCreate (); संदर्भ =getApplicationContext (); } @अधिसूचना पोस्ट पर सार्वजनिक शून्य को ओवरराइड करें (StatusBarNotification sbn) { लॉग। मैं (टैग, "********** onNotificationPosted"); लॉग। i ( TAG , "ID :" + sbn.getId() + "\t" + sbn.getNotification()। टिकरटेक्स्ट + " \t " + sbn.getPackageName ()); myListener .setValue ("पोस्ट:" + sbn.getPackageName ()); } @अधिसूचना हटाने पर सार्वजनिक शून्य को ओवरराइड करें (StatusBarNotification sbn) { लॉग। मैं (टैग, "********** onNotificationRemoved"); लॉग। i ( TAG , "ID :" + sbn.getId() + "\t" + sbn.getNotification()। टिकरटेक्स्ट + " \t " + sbn.getPackageName ()); myListener .setValue ("निकालें:" + sbn.getPackageName ()); } सार्वजनिक शून्य सेट लिस्टनर (MyListener myListener) { अधिसूचना सेवा। माय लिस्टनर =माय लिस्टनर; }} 

चरण 4 - निम्न कोड को res/menu/menu_main.xml में जोड़ें।

<पूर्व><मेनू xmlns:android ="https://schemas.android.com/apk/res/android" xmlns:ऐप ="https://schemas.android .com/apk/res-auto" xmlns:tools ="https://schemas.android.com/tools" टूल्स:संदर्भ =".MainActivity"> <आइटम android:id ="@+id/action_settings" android:orderInCategory ="100" एंड्रॉइड:शीर्षक ="सेटिंग" ऐप:showAsAction ="कभी नहीं" />

चरण 5 - निम्न कोड को res/layout/activity_main.xml में जोड़ें।

<पूर्व>

चरण 6 - निम्न कोड को src/MainActivity.java

में जोड़ें <पूर्व>पैकेज app.tutorialspoint.com.notifyme;import android.app.NotificationChannel;import android.app.NotificationManager;import android.content.Intent;import android.os.Bundle;import android.support.v4.app.NotificationCompat आयात android.support.v7.app.AppCompatActivity; android.view.Menu आयात करें; android.view.MenuItem आयात करें; android.view.View आयात करें; android.widget. बटन आयात करें; android.widget.TextView आयात करें; सार्वजनिक वर्ग MainActivity AppCompatActivity लागू करता है MyListener {निजी TextView txtView; सार्वजनिक स्थिर अंतिम स्ट्रिंग NOTIFICATION_CHANNEL_ID ="10001"; निजी अंतिम स्थिर स्ट्रिंग डिफ़ॉल्ट_नोटिफिकेशन_चैनल_आईडी ="डिफ़ॉल्ट"; @Override संरक्षित शून्य onCreate (बंडल सेव किया गया इंस्टेंसस्टेट) {सुपर .onCreate(savedInstanceState); setContentView(R.layout. activity_main); नई अधिसूचना सेवा ()। सेट लिस्टनर (यह); txtView =findViewById (R.id. textView); बटन btnCreateNotification =findViewById(R.id. btnCreateNotification); btnCreateNotification.setOnClickListener (नया व्यू। ऑनक्लिक लिस्टनर () {@ ओवरराइड पब्लिक वॉयड ऑनक्लिक (व्यू वी) { नोटिफिकेशन मैनेजर mNotificationManager =(नोटिफिकेशन मैनेजर) getSystemService (NotIFICATION_SERVICE); नोटिफिकेशन कॉम्पैट। बिल्डर एमबिल्डर =नया नोटिफिकेशन कॉम्पैट। .setContentTitle ("मेरी अधिसूचना"); mBuilder.setContentText ("अधिसूचना श्रोता सेवा उदाहरण"); mBuilder.setTicker ("अधिसूचना श्रोता सेवा उदाहरण"); mBuilder.setSmallIcon (R.drawable। ic_launcher_foreground); mBuilder.setAutoCancel (सच); अगर (android.os.Build.VERSION। SDK_INT>=android.os.Build.VERSION_CODES। O) {int महत्व =अधिसूचना प्रबंधक। IMPORTANCE_HIGH; अधिसूचना चैनल अधिसूचना चैनल =नया अधिसूचना चैनल ( NOTIFICATION_CHANNEL_ID, "नोटिफिका TION_CHANNEL_NAME", महत्व); mBuilder.setChannelId ( NOTIFICATION_CHANNEL_ID ); मुखर mNotificationManager !=null; mNotificationManager.createNotificationChannel(notificationChannel); } मुखर mNotificationManager !=null; mNotificationManager.notify((int) सिस्टम। currentTimeMillis (), mBuilder.build()); } }); } @CreatOptionsMenu (मेनू मेनू) पर सार्वजनिक बूलियन को ओवरराइड करें { getMenuInflater().inflate(R.menu. menu_main, मेनू); // मेनू संसाधन, मेनू सही है; } @Override सार्वजनिक बूलियन onOptionsItemSelected (MenuItem आइटम) {स्विच (item.getItemId ()) {केस R.id. action_settings:इरादा इरादा =नया इरादा ("android.settings.ACTION_NOTIFICATION_LISTENER_SETTINGS"); स्टार्टएक्टिविटी (इरादा); सच लौटना; डिफ़ॉल्ट:सुपर .onOptionsItemSelected(item) लौटाएं; } } @Override public void setValue (String packageName) { txtView .append("\n" + packageName); }}

चरण 7 - AndroidManifest.xml में निम्न कोड जोड़ें

<पूर्व><प्रकट xmlns:android ="https://schemas.android.com/apk/res/android" पैकेज ="app.tutorialspoint.com.notifyme"> <उपयोग-अनुमति एंड्रॉइड:नाम ="android.permission.VIBRATE" /> <एप्लिकेशन एंड्रॉइड:अनुमति बैकअप ="सच" एंड्रॉइड:आइकन ="@ मिपमैप / आईसी_लॉन्चर" एंड्रॉइड:लेबल ="@ स्ट्रिंग / ऐप_नाम" एंड्रॉइड:राउंडआईकॉन ="@mipmap/ic_launcher_round" android:supportRtl ="true" android:theme="@style/AppTheme"> <गतिविधि android:name =".MainActivity"> <इरादे-फ़िल्टर> <कार्रवाई Android:नाम ="android.intent" .action.MAIN" /> <श्रेणी android :name="android.intent.category.LAUNCHER" /> <इरादे-फ़िल्टर> <कार्रवाई एंड्रॉइड:नाम ="android.service.notification.NotificationListenerService" />

आइए अपना एप्लिकेशन चलाने का प्रयास करें। मुझे लगता है कि आपने अपने वास्तविक Android मोबाइल डिवाइस को अपने कंप्यूटर से कनेक्ट कर लिया है। एंड्रॉइड स्टूडियो से ऐप चलाने के लिए, अपने प्रोजेक्ट की गतिविधि फ़ाइलों में से एक खोलें और टूलबार से रन आइकन पर क्लिक करें। एक विकल्प के रूप में अपने मोबाइल डिवाइस का चयन करें और फिर अपने मोबाइल डिवाइस की जांच करें जो आपकी डिफ़ॉल्ट स्क्रीन प्रदर्शित करेगा -

मैं एंड्रॉइड में स्टेटस बार नोटिफिकेशन को कैसे रोक सकता हूं?


  1. एंड्रॉइड नौगट स्टेटस बार और नोटिफिकेशन कैसे प्राप्त करें

    Android Nougat इस साल के कुछ समय बाद तक लॉन्च नहीं होगा, और ऐसा होने पर भी, इसे आपके डिवाइस के लिए एक कस्टम ROM में बनाए जाने या फ्लैगशिप फ़ोन पर शिप करने में कई महीने लग सकते हैं। तब तक, यदि आप पूर्वावलोकन स्थापित करने में असमर्थ हैं, तो अगली सबसे अच्छी चीज़ जो आप कर सकते हैं, वह है अपने वर्तमान ड

  1. एक्सेस में स्टेटस बार कैसे दिखाएँ या छिपाएँ?

    स्टेटस बार एक विंडो के नीचे एक क्षैतिज विंडो है, और यह विभिन्न प्रकार की स्थिति की जानकारी प्रदर्शित करता है। पहुंच स्थिति पट्टी पर , आप स्थिति पट्टी पर उपलब्ध नियंत्रणों का उपयोग करके सक्रिय विंडो को उपलब्ध दृश्यों में से किसी एक के बीच स्विच कर सकते हैं। एक्सेस में स्टेटस बार को कैसे दिखाना या

  1. एंड्रॉइड स्टेटस बार और नोटिफिकेशन बार को मैन्युअल रूप से कैसे अनुकूलित करें

    एंड्रॉयड अब तक डिज़ाइन किए गए सबसे अनुकूलन योग्य ऑपरेटिंग सिस्टमों में से एक है। यह अन्य मोबाइल OS की तुलना में निजीकरण विकल्प प्रदान करता है। वे आधिकारिक Google Play Store की ओर जा सकते हैं और अनुकूलन के लिए खोज कर सकते हैं। सैकड़ों लॉन्चर ऐप्स, आइकन पैक्स, एंड्रॉइड थीम्स, लाइव वॉलपेपर्स, नोटिफिके