android.intent.category.DEFAULT
इरादे फिल्टर की श्रेणी क्षेत्र में उपयोग करने का उद्देश्य क्या है ?
android.intent.category.DEFAULT
इरादे फिल्टर की श्रेणी क्षेत्र में उपयोग करने का उद्देश्य क्या है ?
जवाबों:
श्रेणियाँ अंतर्निहित इरादों के लिए उपयोग की जाती हैं। इसलिए, यदि आपकी गतिविधि को एक अंतर्निहित इरादे से शुरू किया जा सकता है जब गतिविधि के लिए कोई अन्य विशिष्ट श्रेणी नहीं दी जाती है, तो गतिविधि के इरादे फ़िल्टर में इस श्रेणी को शामिल किया जाना चाहिए। (भले ही आप इंटेंट फिल्टर में अन्य श्रेणियां हों)। यदि आप सुनिश्चित हैं कि आपकी गतिविधि को किसी अन्य श्रेणी के साथ बुलाया जाना चाहिए, तो डिफ़ॉल्ट का उपयोग न करें।
डिफ़ॉल्ट से श्रेणी निर्धारित करने का मतलब यह नहीं है कि जब आपका ऐप लॉन्च होगा तो यह गतिविधि डिफ़ॉल्ट रूप से उपयोग की जाएगी। एक्टिविटी सिर्फ़ सिस्टम से कहती है कि " ओह मैं शुरू किया जा सकता है, भले ही स्टार्टर इंटेंट की श्रेणी कुछ भी नहीं पर सेट हो ! "
इस श्रेणी का उपयोग मुख्य रूप से अंतर्निहित इरादों के लिए किया जाता है। यदि आपकी गतिविधि एक अंतर्निहित इरादे से शुरू होने की इच्छा रखती है, तो उसे इस फ़िल्टर में इस कैथेटर को शामिल करना चाहिए।
मुझे लगता है कि "डिफ़ॉल्ट" शब्द को "डिफ़ॉल्ट" के रूप में समझा जाना चाहिए उम्मीदवार " के। यदि डेटा के एक टुकड़े पर कार्रवाई कई गतिविधियों का समाधान करती है, तो एंड्रॉइड उपयोगकर्ता को सभी उम्मीदवारों को पेश करेगा और उपयोगकर्ता अपने पसंदीदा डिफ़ॉल्ट का चयन कर सकता है।
संदर्भ:
http://developer.android.com/guide/components/intents-filters.html
उस पृष्ठ से निकालें:
एंड्रॉइड सभी निहित इरादों को tostartActivity () के रूप में मानता है जैसे कि वे कम से कम एक श्रेणी में शामिल हों: "android.intent.category.DEFAULT" (CATEGORY_DEFAULT स्थिर)। इसलिए, ऐसी गतिविधियाँ जो अंतर्निहित इरादे प्राप्त करने के लिए तैयार हैं, उनके इरादे के फिल्टर में "android.intent.category.DEFAULT" शामिल होना चाहिए। ("Android.intent.action.MAIN" और "android.intent.category.LAUNCHER" सेटिंग्स के साथ फ़िल्टर अपवाद हैं। वे नए कार्यों को शुरू करने वाली गतिविधियों को चिह्नित करते हैं और लॉन्चर स्क्रीन पर दर्शाए जाते हैं। वे "android .intent" शामिल कर सकते हैं। .Category.DEFAULT "श्रेणियों की सूची में, लेकिन इसकी आवश्यकता नहीं है।"
यह वास्तव में यह सुनिश्चित करने के लिए है कि ऐप चलने पर आपकी अन्य गतिविधियों को कॉल किया जा सके। LAUNCHER उस गतिविधि को कर देगा जिसमें यह पहली गतिविधि है जो शुरू होती है। अन्य गतिविधियों को प्राप्त करने के इरादे का उपयोग करने के लिए, उन्हें DEFAULT लगाकर "वास्तविक" गतिविधियों के रूप में सूचीबद्ध किया जाना चाहिए। अगर मैं जानता हूं कि यह गलत है तो मुझे मत उद्धृत करो।
गतिविधियों को CATEGORY_DEFAULT का समर्थन करने की आवश्यकता होगी ताकि उन्हें Context.startActivity () द्वारा पाया जा सके।
अंतर्निहित उद्देश्य प्राप्त करने के लिए, आपको CATEGORY_DEFAULT श्रेणी को इरादे फ़िल्टर में शामिल करना होगा। तरीके startActivity () और startActivityForResult () सभी इंटेंट्स का इलाज करते हैं जैसे कि उन्होंने CATEGORY_DEFAULT श्रेणी घोषित की। यदि हम इसे अपने इरादे के फिल्टर में घोषित नहीं करते हैं, तो कोई भी निहित उद्देश्य हमारी गतिविधि का समाधान नहीं करेगा।
इसका उपयोग कुछ कार्रवाई को डिफ़ॉल्ट कार्रवाई (जैसा कि इसके नाम से पता चलता है) घोषित करने के लिए किया जाता है। आइए विचार करें कि हमारे पास एक नोटपैड ऐप है (एंड्रॉइड नोटपैड के नमूने की चर्चा करते हुए)। एप्लिकेशन के पहले पृष्ठ में सभी नोटपैड फ़ाइलों की एक सूची शामिल है। जब एक नोटपैड फ़ाइल को एडिट नोट, डिलीट नोट आदि जैसे किसी एक ऑपरेशन को चुना जाता है, तो प्रदर्शन किया जा सकता है। लेकिन मैं अपनी डिफ़ॉल्ट कार्रवाई के रूप में संपादित करना चाहता हूं जिसका अर्थ है जब मैं अपने कीपैड के केंद्र बटन को दबाता हूं, तो संपादन विंडो खुली होनी चाहिए।
https://developer.android.com/guide/components/intents-filters
निहित उद्देश्य प्राप्त करने के लिए, आपको CATEGORY_DEFAULT श्रेणी को इरादे फ़िल्टर में शामिल करना होगा। तरीके startActivity () और startActivityForResult () सभी इंटेंट्स का इलाज करते हैं जैसे कि उन्होंने CATEGORY_DEFAULT श्रेणी घोषित की। यदि आप इस श्रेणी को अपने इरादे के फिल्टर में घोषित नहीं करते हैं, तो कोई भी निहित इरादा आपकी गतिविधि का समाधान नहीं करेगा।
वर्ग:
android.intent.category.DEFAULT
किसी निहित आशय से मेल खाता है। किसी भी अंतर्निहित इरादे को प्राप्त करने के लिए आपकी गतिविधि के लिए इस श्रेणी को शामिल किया जाना चाहिए।