एक उदाहरण में जाने से पहले, हमें पता होना चाहिए कि सिंगलटन डिज़ाइन पैटर्न क्या है। सिंगलटन एक डिज़ाइन पैटर्न है जो किसी वर्ग की तात्कालिकता को केवल एक उदाहरण तक सीमित करता है। उल्लेखनीय उपयोगों में संगामिति को नियंत्रित करना और किसी एप्लिकेशन के डेटा स्टोर तक पहुंचने के लिए एक केंद्रीय पहुंच बिंदु बनाना शामिल है।
यह उदाहरण दर्शाता है कि एंड्रॉइड में सिंगलटन अधिसूचना का उपयोग कैसे करें
चरण 1 - एंड्रॉइड स्टूडियो में एक नया प्रोजेक्ट बनाएं, फाइल ⇒ न्यू प्रोजेक्ट पर जाएं और एक नया प्रोजेक्ट बनाने के लिए सभी आवश्यक विवरण भरें।
चरण 2 - निम्न कोड को res/layout/activity_main.xml में जोड़ें।
<बटन एंड्रॉइड:आईडी ="@ + आईडी /शो" एंड्रॉइड:टेक्स्ट ="सिंगलटोन से नोटिफिकेशन दिखाएं" एंड्रॉइड:लेआउट_विड्थ ="रैप_कंटेंट" एंड्रॉइड:लेआउट_हाइट ="रैप_कंटेंट" /> उपरोक्त कोड में, हमने एक बटन लिया है। जब उपयोगकर्ता शो बटन पर क्लिक करता है, तो यह सिंगलटन वर्ग से अधिसूचना दिखाएगा।
चरण 3 - निम्न कोड को src/MainActivity.java
में जोड़ें <पूर्व>पैकेज com.example.andy.myapplication;import android.os.Build;import android.os.Bundle;import android.support.annotation.RequiresApi;import android.support.v7.app.AppCompatActivity;import android.view देखें; android.widget.Button आयात करें; सार्वजनिक वर्ग MainActivity AppCompatActivity {बटन शो; सिंगलटनउदाहरण सिंगलटनउदाहरण; @Override संरक्षित शून्य पर क्रिएट (बंडल सेव किया गया इंस्टेंसस्टेट) {super.onCreate (savedInstanceState); setContentView(R.layout.activity_main); शो =findViewById (R.id.show); Singletonexample =singleTonExample.getInstance (); Singletonexample.init (getApplicationContext ()); शो.सेटऑनक्लिक लिस्टनर (नया व्यू। ऑनक्लिक लिस्टनर () { @RequiresApi (एपीआई =बिल्ड.VERSION_CODES.O) @ ओवरराइड पब्लिक वॉयड ऑनक्लिक (देखें वी) {सिंगलटन उदाहरण। अधिसूचना (मेनएक्टिविटी। यह); }}); }}पूर्व>उपरोक्त कोड में, हमने सिंगलटन उदाहरण को सिंगलटन वर्ग के रूप में उपयोग किया है इसलिए singleTonExample.java के रूप में एक कॉल बनाएं। और निम्न कोड जोड़ें -
<पूर्व>पैकेज com.example.andy.myapplication;import android.app.AlertDialog;import android.app.Notification;import android.app.NotificationChannel;import android.app.NotificationManager;import android.content.Context;import android. content.DialogInterface;import android.graphics.Color;import android.os.Build;import android.speech.tts.TextToSpeech;import android.support.annotation.RequiresApi;import android.widget.Toast;public class singleTonExample { public static final स्ट्रिंग ANDROID_CHANNEL_ID ="com.example.andy.myapplication"; निजी स्थिर सिंगलटन उदाहरण हमारा इंस्टेंस =नया सिंगलटन उदाहरण (); निजी संदर्भ ऐप कॉन्टेक्स्ट; निजी सिंगलटन उदाहरण () { } सार्वजनिक स्थैतिक संदर्भ प्राप्त करें () {वापसी getInstance ()। getContext (); } पब्लिक स्टैटिक सिंक्रोनाइज़्ड सिंगलटोनएक्सैम्पल getInstance() { हमारा इंस्टेंस लौटाएं; } सार्वजनिक शून्य init (संदर्भ संदर्भ) { अगर (appContext ==शून्य) {this.appContext =संदर्भ; } } निजी प्रसंग getContext() { वापसी appContext; } @RequiresApi(api =Build.VERSION_CODES.O) सार्वजनिक शून्य अधिसूचना (अंतिम MainActivity mainActivity) { NotificationManager notif =(NotificationManager) mainActivity.getSystemService(Context.NOTIFICATION_SERVICE); अधिसूचना चैनल androidChannel =नया अधिसूचना चैनल (ANDROID_CHANNEL_ID, "अधिसूचना चैनल", अधिसूचना प्रबंधक.IMPORTANCE_DEFAULT); androidChannel.enableLights (सच); androidChannel.enableVibration (सच); androidChannel.setLightColor (Color.GREEN); androidChannel.setLockscreenVisibility(Notification.VISIBILITY_PRIVATE); अधिसूचना बनाएं। अधिसूचना चैनल (एंड्रॉइड चैनल); अधिसूचना अधिसूचना =शून्य; सूचित करें =नई अधिसूचना। बिल्डर (मुख्य गतिविधि, ANDROID_CHANNEL_ID)। setContentTitle ("अधिसूचना")। setContentTitle("नमूना विषय").setSmallIcon(R.mipmap.ic_launcher).build(); सूचित करें। सूचित करें (0, सूचित करें); }}पूर्व>आइए अपना एप्लिकेशन चलाने का प्रयास करें। मुझे लगता है कि आपने अपने वास्तविक Android मोबाइल डिवाइस को अपने कंप्यूटर से कनेक्ट कर लिया है। एंड्रॉइड स्टूडियो से ऐप चलाने के लिए, अपने प्रोजेक्ट की गतिविधि फ़ाइलों में से एक खोलें और टूलबार से रन आइकन पर क्लिक करें। एक विकल्प के रूप में अपने मोबाइल डिवाइस का चयन करें और फिर अपने मोबाइल डिवाइस की जांच करें जो आपकी डिफ़ॉल्ट स्क्रीन प्रदर्शित करेगा -
अब ऊपर दिए गए बटन पर क्लिक करें, यह सिंगलटन क्लास से नोटिफिकेशन दिखाएगा जैसा कि नीचे दिखाया गया है -।