- सिंटैक्स:
<data android:scheme="string" android:host="string" android:port="string" android:path="string" android:pathPattern="string" android:pathPrefix="string" android:pathSuffix="string" android:pathAdvancedPattern="string" android:mimeType="string" />
- इसमें शामिल है:
<intent-filter>
- विवरण:
- इंटेंट फ़िल्टर में डेटा स्पेसिफ़िकेशन जोड़ता है. स्पेसिफ़िकेशन यह है
mimeType
का इस्तेमाल करके, डेटा टाइप के लिए एट्रिब्यूट, यूआरआई या डेटा टाइप और यूआरआई, दोनों का इस्तेमाल करें. यूआरआई अलग-अलग इसके हर हिस्से के लिए एट्रिब्यूट:<scheme>://<host>:<port>[<path>|<pathPrefix>|<pathPattern>|<pathAdvancedPattern>|<pathSuffix>]
यूआरआई फ़ॉर्मैट तय करने वाले ये एट्रिब्यूट ज़रूरी नहीं हैं, लेकिन ये म्यूचुअली निर्भर भी होते हैं:
- अगर
scheme
इंटेंट फ़िल्टर के लिए तय नहीं किया गया है, तो बाकी सभी यूआरआई एट्रिब्यूट को अनदेखा कर दिया जाता है. - अगर
host
को फ़िल्टर के लिए सेट नहीं किया गया है,port
एट्रिब्यूट और पाथ के सभी एट्रिब्यूट को अनदेखा कर दिया जाता है.
उसी में मौजूद सभी
<data>
एलिमेंट<intent-filter>
एलिमेंट का योगदान फ़िल्टर इस्तेमाल कर सकते हैं. उदाहरण के लिए, नीचे दिए गए फ़िल्टर की खास बातें:<intent-filter . . . > <data android:scheme="something" android:host="project.example.com" /> ... </intent-filter>
इसके बराबर है:
<intent-filter . . . > <data android:scheme="something" /> <data android:host="project.example.com" /> ... </intent-filter>
आप किसी एलिमेंट के अंदर कई
<data>
एलिमेंट रख सकते हैं एक से ज़्यादा डेटा देने के लिए<intent-filter>
के विकल्प. इसके किसी भी एट्रिब्यूट की डिफ़ॉल्ट वैल्यू नहीं है.इंटेंट फ़िल्टर के काम करने के तरीके और इंटेंट ऑब्जेक्ट से जुड़े नियमों के बारे में जानकारी के लिए का मिलान फ़िल्टर के साथ किया जाता है, तो इंटेंट और इंटेंट फ़िल्टर और इंटेंट फ़िल्टर सेक्शन में जाएं.
- अगर
- विशेषताएं:
android:scheme
- यूआरआई का स्कीम हिस्सा. इसके लिए यह सबसे कम ज़रूरी एट्रिब्यूट है
यूआरआई दर्ज करना. कम से कम एक
scheme
एट्रिब्यूट सेट करना ज़रूरी है या यूआरआई के दूसरे एट्रिब्यूट में से कोई भी काम का नहीं है.स्कीम को बाद में कोलन के बिना तय किया जाता है, जैसे
http:
के बजायhttp
.अगर फ़िल्टर में डेटा टाइप सेट है (
mimeType
का इस्तेमाल करके) एट्रिब्यूट) है, लेकिन कोई स्कीम नहीं है, तोcontent:
औरfile:
स्कीम माना जाता है.ध्यान दें: Android फ़्रेमवर्क में स्कीम मैचिंग आरएफ़सी के उलट, केस-सेंसिटिव (बड़े और छोटे अक्षरों में अंतर) होता है. इस वजह से, हमेशा स्कीम तय करें का उपयोग करें.
android:host
- अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है
यूआरआई अथॉरिटी का होस्ट वाला हिस्सा. इस एट्रिब्यूट का कोई मतलब नहीं है
अगर
scheme
एट्रिब्यूट नहीं है फ़िल्टर के लिए भी दी गई है. एक से ज़्यादा सबडोमेन को मैच कराने के लिए, तारे के निशान (*
) का इस्तेमाल करें. होस्ट में शून्य या उससे ज़्यादा वर्णों का मिलान करें. उदाहरण के लिए, होस्ट*.google.com
मेल खाता हैwww.google.com
,.google.com
, औरdeveloper.google.com
.स्टार, होस्ट एट्रिब्यूट का पहला वर्ण होना चाहिए. उदाहरण के लिए, होस्ट
google.co.*
अमान्य है, क्योंकि तारे का वाइल्डकार्ड पहला वर्ण नहीं है.ध्यान दें: Android फ़्रेमवर्क में होस्ट के नाम से मैच होने वाले होस्ट नेम फ़ॉर्मल आरएफ़सी के उलट, केस-सेंसिटिव (बड़े और छोटे अक्षरों में अंतर) होता है. इस वजह से, हमेशा होस्ट नाम के लिए छोटे अक्षरों का इस्तेमाल करें.
android:port
- यूआरआई अथॉरिटी का पोर्ट वाला हिस्सा. इस एट्रिब्यूट का इस्तेमाल सिर्फ़ किया जा सकता है
अगर
scheme
और इसके लिए भीhost
एट्रिब्यूट दिए गए हैं फ़िल्टर. android:path
android:pathPrefix
android:pathSuffix
android:pathPattern
android:pathAdvancedPattern
- यूआरआई का पाथ वाला हिस्सा, जो
/
से शुरू होना चाहिए.path
एट्रिब्यूट तय करता है कि पाथ जो किसीIntent
ऑब्जेक्ट में पूरे पाथ से मेल खाता है. कॉन्टेंट बनानेpathPrefix
एट्रिब्यूट एक आंशिक पाथ के बारे में बताता है जिसका मिलान इससे किया जाता हैIntent
ऑब्जेक्ट में पाथ का सिर्फ़ शुरुआती हिस्सा.कॉन्टेंट बनाने
pathSuffix
एट्रिब्यूट, पाथ के आखिरी हिस्से से एग्ज़ैक्ट मैच करता है:Intent
ऑब्जेक्ट का इस्तेमाल कर रहे हैं और इस एट्रिब्यूट का/
वर्ण से शुरू होना ज़रूरी नहीं है. कॉन्टेंट बनानेpathPattern
एट्रिब्यूट एक पूरा पाथ बताता है जो पूरे पाथ से मेल खाता हैIntent
ऑब्जेक्ट में पाथ शामिल किया जा सकता है, लेकिन इसमें ये वाइल्डकार्ड हो सकते हैं:- तारा चिह्न (
*
) शून्य के क्रम से कई बार मेल खाता है इसके ठीक पहले वाला वर्ण. - तारे का निशान (
.*
) के बाद दिखने वाला पीरियड, इसके किसी भी क्रम से मेल खाता है शून्य या कई वर्ण इस्तेमाल किए जा सकते हैं.
pathAdvancedPattern
एट्रिब्यूट एक पूरा पाथ बताता है, जिसका मिलान पाथ से किया जाता हैIntent
ऑब्जेक्ट का पूरा पाथ सबमिट करता है और नीचे दिए गए रेगुलर एक्सप्रेशन जैसे पैटर्न के साथ काम करता है:-
पीरियड (
.
) किसी भी वर्ण से मेल खाता है. -
सेट (
[...]
) वर्णों की रेंज से मेल खाता है. उदाहरण के लिए ,[0-5]
0 से 5 तक के किसी एक अंक से मैच करता है, लेकिन 6 से 9 तक के नहीं.[a-zA-Z]
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है यह किसी भी अक्षर से मैच होता है. भले ही, वह केस कुछ भी हो. सेट में "नहीं" का भी इस्तेमाल किया जा सकता है^
मॉडिफ़ायर. -
तारे का निशान (
*
) मॉडिफ़ायर, पिछले पैटर्न के शून्य या उससे ज़्यादा बार मेल खाता है. -
प्लस (
+
) मॉडिफ़ायर, पिछले पैटर्न से एक या ज़्यादा बार मेल खाता है. -
(
{...}
) मॉडिफ़ायर से यह पता चलता है कि किसी पैटर्न में कितनी बार पैटर्न है मैच कर सकते हैं.
pathAdvancedPattern
मैचर, इवैलुएशन को लागू करने की ऐसी प्रोसेस है जिसमें मैचिंग पैटर्न के हिसाब से रीयल टाइम में किया जाता है. इसमें बैकट्रैकिंग की सुविधा का इस्तेमाल नहीं किया जाता.क्योंकि स्ट्रिंग को पढ़े जाने पर
\
का इस्तेमाल एस्केप वर्ण के तौर पर किया जाता है एक्सएमएल से, इसे पैटर्न के तौर पर पार्स करने से पहले, आपको Double-escape करना होगा. उदाहरण के लिए, लिटरल*
को\\*
के तौर पर लिखा गया है और लिटरल\
को\\\
के रूप में लिखा गया है. जब आप कुछ लिखते हैं, तो स्ट्रिंग को Java कोड में बनाना.इन पांच तरह के पैटर्न के बारे में ज़्यादा जानने के लिए,
PATTERN_LITERAL
,PATTERN_PREFIX
,PATTERN_SIMPLE_GLOB
,PATTERN_SUFFIX
, औरPATTERN_ADVANCED_GLOB
मेंPatternMatcher
क्लास.ये एट्रिब्यूट तब ही काम के होते हैं, जब
scheme
औरhost
फ़िल्टर के लिए एट्रिब्यूट भी तय किए जाते हैं.pathSuffix
औरpathAdvancedPattern
को एपीआई लेवल 31 में पेश किया गया था. - तारा चिह्न (
android:mimeType
- MIME मीडिया टाइप, जैसे कि
image/jpeg
याaudio/mpeg4-generic
. उप-प्रकार तारांकन वाइल्डकार्ड (*
) हो सकता है जो यह इंगित करता है कि सब-टाइप मैच हो रहा है.इंटेंट फ़िल्टर, आम तौर पर ऐसे
<data>
एलिमेंट का एलान करता है जिसमें सिर्फ़android:mimeType
एट्रिब्यूट.ध्यान दें: Android फ़्रेमवर्क में MIME टाइप फ़ॉर्मल आरएफ़सी MIME टाइप से अलग, केस-सेंसिटिव (बड़े और छोटे अक्षरों में अंतर) होता है. इस वजह से, हमेशा छोटे अक्षरों का इस्तेमाल करके MIME टाइप तय करें.
- इसमें पेश किया गया:
- एपीआई लेवल 1
- यह भी देखें:
<action>
<category>
इस पेज पर मौजूद कॉन्टेंट और कोड सैंपल कॉन्टेंट के लाइसेंस में बताए गए लाइसेंस के हिसाब से हैं. Java और OpenJDK, Oracle और/या इससे जुड़ी हुई कंपनियों के ट्रेडमार्क या रजिस्टर किए हुए ट्रेडमार्क हैं.
आखिरी बार 2024-08-20 (UTC) को अपडेट किया गया.
[]
[]
{
"last_modified": "आखिरी बार 2024-08-20 (UTC) को अपडेट किया गया.",
"state": ""
}