अपने ऐप्लिकेशन में मौजूद फ़ंक्शन और लागू करने के लिए उससे जुड़े बिल्ट-इन इंटेंट (बीआईआई) की पहचान करने के बाद, उन बीआईआई का एलान करें जिनके साथ आपका फ़ंक्शन काम करता है. इसके लिए, shortcuts.xml
संसाधन फ़ाइल में capability
एलिमेंट तय करें. बीआईआई का एलान करना
के तौर पर capability
आपके ऐप्लिकेशन में उस सिमैंटिक इंटेंट के लिए काम करता हो और
Google Assistant का इस्तेमाल करके, वॉइस क्वेरी में इंटेंट को पूरा करने की सुविधा चालू करता है.
किसी उपयोगकर्ता के पैरामीटर एक्सट्रैक्ट करने के लिए, Assistant नैचुरल लैंग्वेज प्रोसेसिंग का इस्तेमाल करती है
क्वेरी. बिल्ट-इन इंटेंट के रेफ़रंस में ऐसे फ़ील्ड की सूची होती है जिन्हें हर बीआईआई
किसी संबद्ध उपयोगकर्ता क्वेरी से निकालने में सक्षम है. उदाहरण के लिए, अगर कोई उपयोगकर्ता
आपके ऐप्लिकेशन में [actions.intent.GET_FOOD_OBSERVATION
][] क्षमता का अनुरोध करता है
Assistant, "Ok Google, Ask ExampleApp से पूछें कि मैंने पिछले शुक्रवार दोपहर के खाने में क्या खाया", Assistant
उपयोगकर्ता के अनुरोध से, इन बीआईआई पैरामीटर को एक्सट्रैक्ट करता है:
foodObservation.forMeal
= "https://schema.googleapis.com/MealTypeLunch"foodObservation.startTime
= "06-09-2024T00:00:00"foodObservation.endTime
= "06-09-2024T23:59:59"
Assistant, बीआईआई पैरामीटर को वाहन के ऑर्डर intent
में पास करती है.
capability
. एक या उससे ज़्यादा intent
एलिमेंट की जानकारी, इन कामों के लिए दी जा सकती है
बीआईआई शुरू करने के अलग-अलग तरीकों को शामिल करना चाहिए. उदाहरण के लिए, अगर आपने
ऐसी फ़ुलफ़िलमेंट intent
को परिभाषित कर सकता है जिसके लिए
ऊपर उदाहरण दिया गया है. इसके बाद, एक दूसरा इंटेंट तय किया जा सकता है. इसके लिए, एक BII पैरामीटर foodObservation.forMeal
की ज़रूरत होती है. यह पैरामीटर, किसी खास दिन के सभी खान-पान की जानकारी देता है. जैसे, "Ok Google, ExampleApp से पूछो कि मैंने लंच में क्या खाया."
खास जानकारी
ऐप्लिकेशन की खास सुविधाओं के लिए कार्रवाइयां कॉन्फ़िगर करने के लिए, अपने ऐप्लिकेशन में मौजूद shortcuts.xml
फ़ाइल का इस्तेमाल किया जाता है
प्रोजेक्ट की res/xml
डायरेक्ट्री अपलोड करेगा और फिर shortcuts.xml
का रेफ़रंस देगा
शामिल करते हैं. अपने ऐप्लिकेशन मेनिफ़ेस्ट में shortcuts.xml
का रेफ़रंस जोड़ने के लिए, यह तरीका अपनाएं:
अपने ऐप्लिकेशन की मेनिफ़ेस्ट फ़ाइल (
AndroidManifest.xml
) में, कोई ऐसी गतिविधि ढूंढें जिसकी इंटेंट फ़िल्टर कोandroid.intent.action.MAIN
कार्रवाई औरandroid.intent.category.LAUNCHER
श्रेणी.AndroidManifest.xml
मेंshortcuts.xml
का रेफ़रंस जोड़ने के लिए,Activity
में<meta-data>
टैग का इस्तेमाल करें. इस टैग मेंMAIN
औरLAUNCHER
, दोनों के लिए इंटेंट फ़िल्टर होने चाहिए. ऐसा करने के लिए, यह तरीका अपनाएं:<meta-data android:name="android.app.shortcuts" android:resource="@xml/shortcuts" />
ऊपर दिया गया उदाहरण इसमें xml/shortcuts.xml
फ़ाइल के लिए, एक्सएमएल संसाधन के बारे में बताता है
APK के साथ करना है. शॉर्टकट कॉन्फ़िगर करने के बारे में ज़्यादा जानने के लिए, Android डेवलपर दस्तावेज़ में स्टैटिक शॉर्टकट बनाना देखें.
Jetpack लाइब्रेरी androidx.core:core:1.6.0
कंपाइलेशन गड़बड़ियों से बचने के लिए, आपके Android प्रोजेक्ट में (या उससे बड़ा वर्शन) होना ज़रूरी है
shortcuts.xml
में ऐप्लिकेशन की खास सुविधाओं के लिए कार्रवाइयों की सुविधा तय करते समय. जानकारी के लिए, यह देखें
Android Jetpack का इस्तेमाल शुरू करना.
स्टैटिक शॉर्टकट
capability
तय करते समय, shortcuts.xml
में स्टैटिक shortcut
एलिमेंट का एलान किया जा सकता है, ताकि इस सुविधा के फ़ंक्शन को बढ़ाया जा सके. स्टैटिक शॉर्टकट
Assistant की मदद से, Google Play Console पर कोई रिलीज़ अपलोड करते समय इसका डेटा डाला जाता है.
स्टैटिक शॉर्टकट सिर्फ़ नई रिलीज़ बनाकर बनाए और अपडेट किए जा सकते हैं. इसलिए, ये आपके ऐप्लिकेशन में सामान्य गतिविधियों और कॉन्टेंट को हाइलाइट करने के लिए सबसे ज़्यादा काम के होते हैं.
स्टैटिक शॉर्टकट की मदद से, ऐप्लिकेशन की खास सुविधाओं के लिए कार्रवाइयां करने की सुविधा चालू की जा सकती है:
सुविधा के शॉर्टकट. ऐसे शॉर्टकट बनाएं जो आपकी
capability
में पहले से तयintent
पैरामीटर वैल्यू शामिल हैं. उदाहरण के लिए, आपके पास ऐप्लिकेशन शॉर्टकट के तौर पर "दौड़ना शुरू करें" का एलान करने का विकल्प है जोSTART_EXERCISE
आपके फ़िटनेस ऐप्लिकेशन में बीआईआई की सुविधा.इन शॉर्टकट में
intent
,shortLabel
, औरlongLabel
एट्रिब्यूट शामिल हैं. उन्हें अपने-आप मिलने वाले सुझाव के तौर पर, चिप के तौर पर उपलब्ध कराना प्लैटफ़ॉर्म, जैसे कि Assistant या Android पर किसी ऐप्लिकेशन के आइकॉन को दबाकर रखने पर लॉन्चर. कार्रवाई शॉर्टकट, इकाई के शॉर्टकट के तौर पर भी काम कर सकता है. ज़्यादा जानकारी के साथ लिंक का इस्तेमाल करकेcapability
से जोड़कर<capability-binding>
टैग.इकाई के शॉर्टकट. इकाई के शॉर्टकट, इस्तेमाल किए जा सकने वाले पैरामीटर की सूची देते हैं
capability
की वॉइस क्वेरी के पूरा होने की वैल्यू. उदाहरण के लिए, कोई इकाई शॉर्टकट के साथ कसरत के प्रकार ("हाइक," "रन" वगैरह) की सूची इसकाexercise.name
बीआईआई पैरामीटरSTART_EXERCISE
क्षमता. अगर किसी उपयोगकर्ता के स्टेटमेंट का मिलान किसी इकाई से होता है, तोshortcutId
आईडी यह होगा रॉ यूज़र क्वेरी वैल्यू के बजाय इंटेंट को पास किया जाता है.Entity
शॉर्टकटintent
,shortLabel
याlongLabel
को तय नहीं करते एट्रिब्यूट की वैल्यू के तौर पर, अपने-आप काम करने वाले प्लैटफ़ॉर्म पर इनका सुझाव नहीं दिया जाता. इसके लिए ज़्यादा जानकारी के लिए, ऐप्लिकेशन की खास सुविधाओं के लिए कार्रवाइयों के लिए इनलाइन इन्वेंट्री देखें.
क्षमता स्कीमा
इस टेबल में, shortcuts.xml
में मौजूद capability
एलिमेंट के लिए, ऐप्लिकेशन ऐक्शन स्कीमा के बारे में बताया गया है. टैग शामिल करते समय, इसके सभी एट्रिब्यूट ज़रूरी हैं
जब तक "ज़रूरी नहीं" मार्क न हो.
Shortcuts.xml टैग | इसमें शामिल है | विशेषताएं |
---|---|---|
<capability> |
<shortcuts> |
|
<intent> |
<capability> |
|
<url-template> |
<intent> |
|
<extra> |
<intent> |
सिर्फ़ फ़ोरग्राउंड ऐप्लिकेशन को शुरू करने पर ही लागू होता है |
<parameter> |
<intent> |
|
<shortcut-fulfillment> |
<capability> |
सिर्फ़ इनलाइन इन्वेंट्री के लिए लागू होता है |
<parameter> |
<shortcut-fulfillment> |
android:name |
<slice> |
<capability> |
सिर्फ़ Android स्लाइस के लिए लागू |
क्षमता स्कीमा की जानकारी
इस सेक्शन में, capability
स्कीमा एलिमेंट के बारे में बताया गया है.
<क्षमता>
capability
, जो आपके ऐप्लिकेशन के साथ काम करने वाले ऐप्लिकेशन ऐक्शन के इंटेंट के बारे में बताता है. आपकी shortcuts.xml
फ़ाइल में मौजूद हर <capability>
एलिमेंट में, कार्रवाई को पूरा करने के लिए कम से कम एक <intent>
होना चाहिए.
विशेषताएं:
android:name
: बिल्ट-इन इंटेंट कार्रवाई आईडी (उदाहरण के लिए, [actions.intent.GET_FOOD_OBSERVATION
][]). इस्तेमाल किए जा सकने वाले प्रॉडक्ट की सूची के लिए बिल्ट-इन इंटेंट के लिए, बिल्ट-इन इंटेंट रेफ़रंस देखें.app:queryPatterns
: स्ट्रिंग अरे रिसॉर्स, जिसमें उपयोगकर्ता जोड़ें. यह एट्रिब्यूट सिर्फ़ इन पर लागू होगा कस्टम इंटेंट से अलग हो सकते हैं, क्योंकि बीआईआई में पहले से ही उपयोगकर्ताओं की ओर से किए जा रहे टास्क को ज़ाहिर करने के सामान्य तरीके या जो वे चाहते हैं.
<intent>
Android intent
एलिमेंट से पता चलता है कि उपयोगकर्ता की क्वेरी कैसी होनी चाहिए
ग्राहकों को ऐप्लिकेशन में मौजूद सुविधाओं का इस्तेमाल करके ग्राहकों को भेजना हो. डेवलपर, capability
में एक से ज़्यादा <intent>
टैग दे सकते हैं. Assistant, उपयोगकर्ता की क्वेरी को पूरा करने की कोशिश करती है. इसके लिए, वह इनका इस्तेमाल करती है
capability
में पहले <intent>
, जिसके लिए सभी ज़रूरी पैरामीटर हैं
दिया गया है.
विशेषताएं:
android:action
: इंटेंटAction
टाइप. डिफ़ॉल्ट रूप से, यहACTION_VIEW
पर सेट होता है.android:targetClass
: टारगेट गतिविधि की क्लास, उदाहरण के लिए:"com.example.exercise.ExerciseActivity"
android:targetPackage
: इस पैकेज में, ऐक्टिविटी क्लास का टारगेट शामिल है उदाहरण:"com.example.exercise
android:data
: यह फ़ील्ड<url-template>
ने ओवरराइट कर दिया है अगरintent
में टैग के बारे में बताया गया है.
<url-टेंप्लेट>
डीप लिंक यूआरआई बनाने के लिए टेंप्लेट वेब ऐप्लिकेशन या प्रॉडक्ट इस डिवाइस पर खोले जा सकते हैं. टेंप्लेट को बिल्ट-इन इंटेंट के साथ बड़ा किया जा सकता है पैरामीटर की जानकारी दें. इसके लिए एचटीटीपी यूआरएल टेंप्लेट के उदाहरण हैं. यूआरएल टेंप्लेट पर Wikipedia का लेख. टेंप्लेट का फ़ॉर्मैट, आरएफ़सी6570 यूआरआई टेंप्लेट स्पेसिफ़िकेशन के मुताबिक होता है.
यहां यूआरएल टेंप्लेट की वैल्यू के कुछ उदाहरण दिए गए हैं:
टेंप्लेट | वैल्यू | बड़ा किया गया मान |
---|---|---|
https://example.com/test{?foo,bar} |
"foo": "123"
|
https://example.com/test?foo=123&bar=456 |
https://example.com/test?utm_campaign=appactions{&foo,bar} |
"foo": "123"
|
https://example.com/test?utm_campaign=appactions&foo=123&bar=456 |
https://example.com/test?utm_campaign=appactions{#foo} |
"foo": "123" |
https://example.com/test?utm_campaign=appactions#foo=123 |
myapp://example/{foo} |
"foo": "123" |
myapp://example/123 |
यूआरएल टेंप्लेट कॉन्फ़िगर करने के बारे में ज़्यादा जानने के लिए, यहां जाएं फ़ुलफ़िलमेंट में यूआरएल टेंप्लेट.
<extra>
intent
के लिए अतिरिक्त डेटा के बारे में बताता है. ऐप्लिकेशन की खास सुविधाओं के लिए कार्रवाइयों के लिए, इस फ़ील्ड का इस्तेमाल सिर्फ़ इन कामों के लिए किया जाता है
capability
के लिए [फ़ोरग्राउंड ऐप्लिकेशन इनवोकेशन][] को चालू करें.
<पैरामीटर>
इंटेंट पैरामीटर वैल्यू के लिए बीआईआई पैरामीटर मैप करता है. ज़्यादा जानकारी के लिए, यह देखें पैरामीटर का डेटा और मैचिंग.
विशेषताएं:
android:name
: इसintent
के साथ जोड़े जाने वाले बीआईआई पैरामीटर का नाम पैरामीटर. नाम, बीआईआई पैरामीटर की लीफ़-लेवल फ़ील्ड होना चाहिए (इसके लिए उदाहरण के लिए,foodObservation.aboutFood.name
).android:key
: BII पैरामीटर वैल्यू की, डेवलपर की तय की गई कुंजी. उदाहरण के लिए, तोmessage.recipient.name
बीआईआई के लिएcontact_name
तय किया जा सकता है पैरामीटर.android:mimeType
: पैरामीटर का mimeType, जैसे किtext/*
. यह फ़ील्ड, सिर्फ़ कस्टम इंटेंट के पैरामीटर के लिए ज़रूरी है.android:required
: यह बताता है कि उपयोगकर्ता क्वेरी में इसे शामिल करना ज़रूरी है या नहीं इस इंटेंट के लिए पैरामीटर का इस्तेमाल करना होगा. अगर पैरामीटर नहीं है तो Assistant उपयोगकर्ता की क्वेरी को पूरा करने के लिए अगलेcapability
के लिएintent
तय किया गया.
<शॉर्टकट-fulfillment>
इससे पता चलता है कि किसी intent
को इनलाइन इन्वेंट्री शॉर्टकट में
ऑर्डर पूरा करने के लिए, दिए गए पैरामीटर का इस्तेमाल किया जाएगा.
ज़्यादा जानकारी के लिए, शॉर्टकट इंटेंट का इस्तेमाल करके ऑर्डर पूरा करना देखें.
<पैरामीटर> (<shortcut-fulfillment>
के लिए)
ज़रूरी नहीं है. यह एट्रिब्यूट, इनवेंट्री के लिए शॉर्टकट फ़ुलफ़िलमेंट के साथ इनलाइन BII पैरामीटर को मैप करता है. ज़्यादा जानकारी के लिए, शॉर्टकट इंटेंट का इस्तेमाल करके ऑर्डर पूरा करना देखें.
विशेषता:
android:name
: इनलाइन इन्वेंट्री से जोड़ने के लिए, बीआईआई पैरामीटर का नाम शॉर्टकट फ़ुलफ़िलमेंट. नाम, बीआईआई के लीफ़-लेवल फ़ील्ड होना चाहिए पैरामीटर (उदाहरण के लिए,menuItem.name
).
<स्लाइस>
इससे Assistant, इस capability
से मैच करने वाली क्वेरी के नतीजे को Android स्लाइस के तौर पर एम्बेड कर पाती है. जानकारी के लिए, यह देखें
Android स्लाइस के साथ ऐप्लिकेशन की खास सुविधाओं के लिए कार्रवाइयों को इंटिग्रेट करें.
शॉर्टकट स्कीमा
इस टेबल में, shortcut
एलिमेंट के उन एट्रिब्यूट के बारे में बताया गया है जिनका इस्तेमाल इन कामों के लिए किया जाता है
ऐप्लिकेशन की खास सुविधाओं के लिए कार्रवाइयां करने की सुविधा चालू करें. टैग शामिल करते समय, उसके सभी एट्रिब्यूट की वैल्यू देना ज़रूरी है. हालांकि, अगर एट्रिब्यूट को "ज़रूरी नहीं" के तौर पर मार्क किया गया है, तो उसकी वैल्यू देना ज़रूरी नहीं है.
Shortcuts.xml टैग | इसमें शामिल है | विशेषताएं |
---|---|---|
<shortcut> |
<shortcuts> |
|
<intent> |
<shortcut> |
|
<capability-binding> |
|
|
<parameter-binding> |
<capability-binding> |
|
<extra> |
<shortcut> |
सिर्फ़ Enum पैरामीटर मैचिंग के लिए लागू होता है. |
शॉर्टकट स्कीमा की जानकारी
इस सेक्शन में, shortcut
स्कीमा एलिमेंट के बारे में बताया गया है.
<शॉर्टकट>
shortcuts.xml
में कुछ खास एट्रिब्यूट के साथ तय किया गया Android <shortcut>
जो ऐप्लिकेशन की खास सुविधाओं के लिए कार्रवाइयों के काम की हों. shortcutShortLabel
के लिए स्ट्रिंग वैल्यू
और shortcutLongLabel
फ़ील्ड का संदर्भ APK की
स्ट्रिंग के संसाधन.
विशेषताएं:
android:shortcutId
: इस शॉर्टकट का आइडेंटिफ़ायर.android:shortcutShortLabel
: एक छोटा शॉर्टकट दिखाने वाला स्ट्रिंग रिसॉर्स वाक्यांश. उदाहरण के लिए,"@string/callDavidShort"
"कॉल" वैल्यू दिखाता है डेविड."android:shortcutLongLabel
: स्ट्रिंग रिसॉर्स, लंबे शॉर्टकट को दिखाता है वाक्यांश. उदाहरण के लिए,"@string/callDavidLong"
"एक लाइन बनाएं" वैल्यू डेविड को ऑडियो कॉल करो."
<इंटेंट>
इस शॉर्टकट से जुड़ा Android इंटेंट. यह intent
तब लागू होता है, जब उपयोगकर्ता बोलकर या टच करके इस शॉर्टकट को लॉन्च करता है.
shortcut
इंटेंट एट्रिब्यूट, capability
intent
एट्रिब्यूट से मेल खाते हैं.
<capability-बाइंडिंग>
shortcut
को ऐप्लिकेशन की खास सुविधाओं के लिए कार्रवाइयों capability
से जोड़ता है. इस एलिमेंट को इसमें जोड़ना
shortcut
, Assistant
का इस्तेमाल करके, बोलकर निर्देश देने की सुविधा चालू करता है.
विशेषताएं:
android:key
: इसcapability
एट्रिब्यूट कीandroid:name
एट्रिब्यूटshortcut
इस पर सीमित है. उदाहरण के लिए,actions.intent.START_EXERCISE
.
<पैरामीटर-बाइंडिंग>
ऐसा एट्रिब्यूट जो shortcut
को किसी ऐप्लिकेशन के सिर्फ़ एक पैरामीटर से जोड़ता है. हालांकि, ऐसा करना ज़रूरी नहीं है
capability
कार्रवाइयां. अगर shortcut
के लिए parameter-binding
तय किया गया है, तो
शॉर्टकट का इस्तेमाल, बीआईआई पैरामीटर को इनलाइन इन्वेंट्री इकाई देने के लिए किया जा सकता है.
ज़्यादा जानकारी के लिए, ऐप्लिकेशन की खास सुविधाओं के लिए कार्रवाइयों के लिए इनलाइन इन्वेंट्री देखें.
विशेषताएं:
android:key
: असोसिएट किए जाने वालेcapability
बीआईआई पैरामीटर का नाम करने के लिए शॉर्टकट का इस्तेमाल करें. उदाहरण के लिए,exercise.name
.android:value
:entity
वैल्यू. यह एकentity
या संसाधन सूची.
<अतिरिक्त>
शॉर्टकट के लिए, extra
बंडल का डेटा. सिर्फ़ बिड ही एक ऐसा डेटा है
ये ऐप्लिकेशन कार्रवाइयों के shortcut
एलिमेंट से जुड़े हुए होते हैं. Accessibility यूआरएल का मतलब है
साफ़ तौर पर इकाई की पहचान करने वाला वेब पेज हो. अगर इंटेंट पैरामीटर टाइप, schema.org/Enumeration का सब-टाइप है, तो एलिमेंट की वैल्यू तय करने के लिए इसका इस्तेमाल किया जाता है. पैरामीटर फ़ील्ड के लिए यह ज़रूरी है
जिसके टाइप schema.org/Enumeration
के सब-टाइप हैं (उदाहरण के लिए:
MealTypeBreakfast
).
विशेषताएं:
android:key
: ऐप्लिकेशन ऐक्शन के लिए इस्तेमाल की जा सकने वाली वैल्यू:sameAs
android:value
:sameAs
यूआरएल की वैल्यू
ज़्यादा जानकारी के लिए, गिनती की गई पैरामीटर वैल्यू से मैच करना लेख पढ़ें.
इंटेंट पूरा करने के विकल्प
आपने <capability>
में intent
एलिमेंट तय करके बताया है कि Assistant कैसे काम करेगी
उपयोगकर्ता के बोले गए निर्देशों का जवाब देता है या पूरा करता है. आपके ऐप्लिकेशन के नेविगेशन के स्ट्रक्चर के आधार पर, intent
आपके ऐप्लिकेशन में फ़ुलफ़िलमेंट डेस्टिनेशन को लॉन्च करने का तरीका कॉन्फ़िगर करने के कई तरीके हैं.
ग्राहक को आइटम भेजने के लिए ये विकल्प उपलब्ध हैं:
एक्सप्लिसिट इंटेंट:
intent
के लिएtargetClass
औरtargetPackage
एट्रिब्यूट. ऐप्लिकेशन की खास सुविधाओं के लिए कार्रवाइयों को पूरा करने का यह सुझाया गया तरीका है.डीप लिंक:
intent
एलिमेंट में<url-template>
टैग तय करके, Android डीप लिंक का इस्तेमाल करके ऐप्लिकेशन डेस्टिनेशन लॉन्च करें. यह तरीका तब फ़ायदेमंद होता है, जब आपका ऐप्लिकेशन नेविगेशन पहले से ही डीप लिंक का इस्तेमाल करता हो.इंटेंट डेटा:
intent
में फ़ुलफ़िलमेंट यूआरआई दिया जा सकता हैandroid:data
एट्रिब्यूट की वैल्यू सबमिट करें. इस फ़ील्ड को<url-template>
डेटा से बदल दिया गया है अगर वह टैगintent
में भी बताया गया है.
पैरामीटर का डेटा और मैचिंग
डिफ़ॉल्ट रूप से Assistant, उपयोगकर्ता की क्वेरी से निकाले गए बीआईआई पैरामीटर को
ऐप्लिकेशन को capability
में बताए गए Android intent
के extra
डेटा के रूप में दिखाया गया है.
इसके अलावा, आपके पास <url-template>
टैग का एलान करने का भी विकल्प है
capability
जिसमें डाइनैमिक पैरामीटर के लिए प्लेसहोल्डर मौजूद हों. यह टेंप्लेट, ऐप्लिकेशन लिंक यूआरएल, कस्टम स्कीम या इंटेंट पर आधारित यूआरएल का इस्तेमाल करके, आपकी किसी Android गतिविधि पर मैप करता है.
इंटेंट एक्स्ट्रा का इस्तेमाल करना
इस उदाहरण में, capability
के लिए साफ़ तौर पर बताए गए इंटेंट के बारे में बताया गया है
ग्राहक को आइटम भेजना:
<capability android:name="actions.intent.START_EXERCISE">
<intent
android:targetPackage="com.example.myapp"
android:targetClass="com.example.myapp.ExerciseActivity">
<parameter android:name="exercise.name" android:key="exercise" />
</intent>
</capability>
ऊपर दिए गए सैंपल में, "Ok Google, कॉफ़ी पीने की जगह" से जुड़ी उपयोगकर्ता क्वेरी के लिए
उदाहरण के लिए," ऐप्लिकेशन को एक intent
मिलता है, जो कॉम्पोनेंट को शुरू करता है:
targetPackage
, targetClass
. घटक को
key = "exercise"
, value = "Running"
.
Android डीप लिंक के लिए यूआरएल टेंप्लेट का इस्तेमाल करना
अगर आपका ऐप्लिकेशन डाइनैमिक पैरामीटर का इस्तेमाल करके, पहले से ही ऐप्लिकेशन से लिंक किए गए यूआरएल,
तो Android जनरेट करने के लिए, intent
में <url-template>
तय किया जा सकता है
कार्रवाई पूरी करने के लिए डीप लिंक. यहां दिए गए सैंपल में <url-template>
के बारे में बताया गया है:
<capability android:name="actions.intent.START_EXERCISE">
<intent>
<url-template android:value="myapp://start{?exercise}" />
<parameter android:name="exercise.name" android:key="exercise" />
</intent>
</capability>
ऊपर दिए गए सैंपल में, उपयोगकर्ता की क्वेरी के लिए, जैसे कि “Ok Google, कॉफ़ी ऑर्डर करो से हटा दिया जाता है", तो ऐप्लिकेशन को जनरेट किया गया यूआरएल मिलेगा: "myapp://start?exercise=दौड़ना".
बीआईआई पैरामीटर को अपने यूआरएल की किसी पोज़िशन पर मैप करने के लिए,
<parameter>
टैग की android:name
एट्रिब्यूट. यह एट्रिब्यूट, यूआरएल टेंप्लेट में मौजूद उस android:key
वैल्यू से जुड़ा होता है जिसे आपको उपयोगकर्ता की जानकारी से बदलना है. android:key
की वैल्यू मौजूद होनी चाहिए
आपके <url-template>
में और कर्ली ब्रैकेट ({}
) के अंदर.
सूची में शामिल पैरामीटर वैल्यू को मैच करें
कुछ बीआईआई पैरामीटर, ग्राहक को आइटम भेजने के इंटेंट के लिए तय वैल्यू देते हैं.
उदाहरण के लिए, RECORD_FOOD_OBSERVATION
बीआईआई की इस्तेमाल की जा सकने वाली टेक्स्ट वैल्यू. इसके लिए
ये पैरामीटर इस्तेमाल करते हैं, तो Assistant उपयोगकर्ता की क्वेरी ("ब्रेकफ़ास्ट") का मिलान
वह इकाई जिसकी sameAs
वैल्यू, enum स्कीमा यूआरएल से मेल खाती हो
(https://schema.googleapis.com/MealTypeBreakfast
). Enum को जोड़ने के लिए
इस्तेमाल की जा सकने वाली entity
की वैल्यू के लिए, आपको यहां sameAs
असोसिएशन का एलान करना होगा
shortcut
. नीचे दिया गया सैंपल, एक sameAs
असोसिएशन को दिखाता है
इनलाइन इकाई शॉर्टकट:
<shortcut android:shortcutId="meal_breakfast" >
<capability-binding android:key="actions.intent.RECORD_FOOD_OBSERVATION">
<parameter-binding android:key="foodObservation.forMeal" />
</capability-binding>
<extra
android:key="sameAs"
android:value="http://schema.googleapis.com/MealTypeBreakfast" />
</shortcut>
<capability android:name="actions.intent.RECORD_FOOD_OBSERVATION">
<intent targetPackage="com.example.app" targetClass="com.example.app.Class">
<parameter android:name="foodObservation.forMeal" android:key="for_meal" />
</intent>
</capability>
ऊपर दिए गए उदाहरण में, अगर RECORD_FOOD_OBSERVATION
सुविधा
"नाश्ते" के लिए मिलान भोजन प्रकार, निम्न अतिरिक्त को
ऑर्डर पूरा करने का intent
:
key = "for_meal"
value = "meal_breakfast"
सुविधाएं
shortcuts.xml
में, ऐप्लिकेशन की खास सुविधाओं के लिए कार्रवाइयों की ये सुविधाएं उपलब्ध हैं.
ऐप्लिकेशन की खास सुविधाओं के लिए कार्रवाइयों की इनलाइन इन्वेंट्री
कुछ बीआईआई पैरामीटर के लिए, शॉर्टकट का इस्तेमाल इकाई को गाइड करने के लिए किया जा सकता है
shortcuts.xml
में बताई गई काम करने वाली इकाइयों के सेट को एक्सट्रैक्शन के तौर पर जाना जाता है.
इनलाइन इन्वेंट्री. ज़्यादा जानकारी के लिए, इनलाइन इन्वेंट्री देखें.
कस्टम इंटेंट
सुविधाओं को बोलकर चालू करने के लिए, कस्टम इंटेंट का एलान shortcuts.xml
में किया जा सकता है
जो आपके ऐप्लिकेशन में मौजूद बीआईआई से मेल नहीं खाते. हालांकि, इन प्रॉडक्ट में एक जैसे
फ़ंक्शन का इस्तेमाल करने के लिए, कस्टम इंटेंट के लिए दो अतिरिक्त
shortcuts.xml
में विशेषताएं:
app:queryPatterns
: कस्टम इंटेंट के लिए अलग-अलग क्वेरी पैटर्न बताने वाला कलेक्शन रिसॉर्स.android:mimeType
: कस्टम इंटेंट का पैरामीटर टाइप. यह फ़ील्ड बीआईआई के लिए ज़रूरी नहीं है, जहां पैरामीटर का टाइप पता हो. कस्टम इंटेंट के पैरामीटर के लिए, इस्तेमाल किया जा सकने वाला सीमेंटिक टाइप तय करना ज़रूरी है.
ज़्यादा जानकारी के लिए, कस्टम इंटेंट देखें.