यह उदाहरण इस बारे में प्रदर्शित करता है कि यह कैसे निर्धारित किया जाए कि एंड्रॉइड में अधिसूचना द्वारा किसी गतिविधि को बुलाया गया है या नहीं
चरण 1 - एंड्रॉइड स्टूडियो में एक नया प्रोजेक्ट बनाएं, फाइल ⇒ न्यू प्रोजेक्ट पर जाएं और एक नया प्रोजेक्ट बनाने के लिए सभी आवश्यक विवरण भरें।
चरण 2 - निम्न कोड को res/layout/activity_main.xml में जोड़ें।
<पूर्व> xml संस्करण ="1.0" एन्कोडिंग ="utf-8"?>चरण 3 - निम्न कोड को src/MainActivity में जोड़ें।
पैकेज app.tutorialspoint.com.notifyme;import android.app.NotificationChannel;import android.app.NotificationManager;import android.app.PendingIntent;import android.content.Intent;import android.os.Bundle;import android. support.v4.app.NotificationCompat; आयात android.support.v7.app.AppCompatActivity; आयात android.util.Log; आयात android.view.View; सार्वजनिक वर्ग MainActivity AppCompatActivity का विस्तार करता है {सार्वजनिक स्थिर अंतिम स्ट्रिंग NOTIFICATION_CHANNEL_ID ="10001"; निजी अंतिम स्थिर स्ट्रिंग डिफ़ॉल्ट_नोटिफिकेशन_चैनल_आईडी ="डिफ़ॉल्ट"; @Override संरक्षित शून्य onCreate (बंडल सेव किया गया इंस्टेंसस्टेट) {सुपर .onCreate(savedInstanceState); setContentView(R.layout. activity_main); अगर (getIntent ()। getExtras ()! =अशक्त) {बंडल b =getIntent ()। getExtras (); बूलियन आयाफ्रॉमनोटिफिकेशन =b.getBoolean ("सूचना से"); लॉग। i ("अधिसूचना से आया", स्ट्रिंग। valueOf (cameFromNotification)); } } सार्वजनिक शून्य createNotification (देखें दृश्य) {आशय अधिसूचना इंटेंट =नया इरादा (getApplicationContext (), मुख्य गतिविधि। वर्ग); अधिसूचनाइन्टेंट.पुटएक्स्ट्रा ("सूचना से", सत्य); अधिसूचनाइन्टेंट.सेटफ्लैग्स (इरादा। FLAG_ACTIVITY_CLEAR_TOP | आशय। FLAG_ACTIVITY_SINGLE_TOP); पेंडिंग इंटेंट पेंडिंग इंटेंट =पेंडिंग इंटेंट। getActivity (यह, 0, अधिसूचना इंटेंट, 0); अधिसूचना प्रबंधक mNotificationManager =(अधिसूचना प्रबंधक) getSystemService (NotIFICATION_SERVICE) प्राप्त करें; अधिसूचना कॉम्पैट। बिल्डर एमबिल्डर =नया नोटिफिकेशन कॉम्पैट। बिल्डर (मेनएक्टिविटी। यह, डिफॉल्ट_नोटिफिकेशन_चैनल_आईडी); mBuilder.setContentTitle ("मेरी अधिसूचना"); mBuilder.setContentIntent (लंबित इंटेंट); 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 महत्व =अधिसूचना प्रबंधक। महत्वपूर्ण:उच्च; अधिसूचना चैनल अधिसूचना चैनल =नया अधिसूचना चैनल ( NOTIFICATION_CHANNEL_ID, "NOTIFICATION_CHANNEL_NAME", महत्व); mBuilder.setChannelId ( NOTIFICATION_CHANNEL_ID ); मुखर mNotificationManager !=null; mNotificationManager.createNotificationChannel(notificationChannel); } मुखर mNotificationManager !=null; mNotificationManager.notify((int) System। currentTimeMillis (), mBuilder.build()); }}पूर्व>चरण 4 - AndroidManifest.xml में निम्न कोड जोड़ें
<पूर्व> xml संस्करण ="1.0" एन्कोडिंग ="utf-8" ?><प्रकट 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 मोबाइल डिवाइस को अपने कंप्यूटर से कनेक्ट कर लिया है। एंड्रॉइड स्टूडियो से ऐप चलाने के लिए, अपने प्रोजेक्ट की गतिविधि फ़ाइलों में से एक खोलें और टूलबार से रन आइकन पर क्लिक करें। एक विकल्प के रूप में अपने मोबाइल डिवाइस का चयन करें और फिर अपने मोबाइल डिवाइस की जांच करें जो आपकी डिफ़ॉल्ट स्क्रीन प्रदर्शित करेगा -