अपने ऐप्लिकेशन के फ़ंक्शन और उसमें पहले से मौजूद इंटेंट की पहचान करने के बाद
(बीआईआई) को लागू करना है. साथ ही, अपने फ़ंक्शन के बारे में
shortcuts.xml
संसाधन फ़ाइल में एक capability
एलिमेंट. बीआईआई का एलान करना
के तौर पर capability
आपके ऐप्लिकेशन में उस सिमैंटिक इंटेंट के लिए काम करता हो और
Google Assistant का इस्तेमाल करके, वॉइस क्वेरी में इंटेंट को पूरा करने की सुविधा चालू करता है.
किसी उपयोगकर्ता के पैरामीटर एक्सट्रैक्ट करने के लिए, Assistant नैचुरल लैंग्वेज प्रोसेसिंग का इस्तेमाल करती है
क्वेरी. बिल्ट-इन इंटेंट के रेफ़रंस में ऐसे फ़ील्ड की सूची होती है जिन्हें हर बीआईआई
किसी संबद्ध उपयोगकर्ता क्वेरी से निकालने में सक्षम है. उदाहरण के लिए, अगर कोई उपयोगकर्ता
आपके ऐप्लिकेशन में actions.intent.ORDER_MENU_ITEM
सुविधा को शुरू करता है
"Ok Google, ExampleCafe से ExampleCafe से पिज़्ज़ा ऑर्डर करें", Assistant
उपयोगकर्ता के अनुरोध से, इन बीआईआई पैरामीटर को एक्सट्रैक्ट करता है:
menuItem.name
= "पिज़्ज़ा"menuItem.inMenuSection.inMenu.forRestaurant.name
= "ExampleCafe"
Assistant, बीआईआई पैरामीटर को वाहन के ऑर्डर intent
में पास करती है.
capability
. एक या उससे ज़्यादा intent
एलिमेंट की जानकारी, इन कामों के लिए दी जा सकती है
बीआईआई शुरू करने के अलग-अलग तरीकों को शामिल करना चाहिए. उदाहरण के लिए, अगर आपने
ऐसी फ़ुलफ़िलमेंट intent
को परिभाषित कर सकता है जिसके लिए
ऊपर उदाहरण दिया गया है. इसके बाद, दूसरा इंटेंट तय किया जा सकता है, जिसके लिए एक बीआईआई की ज़रूरत होती है
menuItem.name
पैरामीटर, जो आस-पास मौजूद रेस्टोरेंट के विकल्प दिखाता है. ऐसा तब होता है, जब कोई उपयोगकर्ता
एक आसान से अनुरोध करता है. जैसे, "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
तय करते समय, स्टैटिक shortcut
एलिमेंट का एलान किया जा सकता है
shortcuts.xml
सुविधा के फ़ंक्शन को बढ़ाने के लिए. स्टैटिक शॉर्टकट
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
को तय नहीं करते एट्रिब्यूट की वैल्यू के तौर पर, अपने-आप काम करने वाले प्लैटफ़ॉर्म पर इनका सुझाव नहीं दिया जाता. इसके लिए ज़्यादा जानकारी के लिए, ऐप्लिकेशन की खास सुविधाओं के लिए कार्रवाइयों के लिए इनलाइन इन्वेंट्री देखें.
क्षमता स्कीमा
नीचे दी गई टेबल में, capability
एलिमेंट के लिए ऐप्लिकेशन की खास सुविधाओं के लिए बनाई गई कार्रवाइयों के स्कीमा के बारे में बताया गया है
shortcuts.xml
में. टैग शामिल करते समय, इसके सभी एट्रिब्यूट ज़रूरी हैं
जब तक "ज़रूरी नहीं" मार्क न हो.
Shortcuts.xml टैग | इसमें शामिल | विशेषताएं |
---|---|---|
<capability> |
<shortcuts> |
|
<intent> |
<capability> |
|
<url-template> |
<intent> |
|
<extra> |
<intent> |
सिर्फ़ फ़ोरग्राउंड ऐप्लिकेशन को शुरू करने पर ही लागू होता है |
<parameter> |
<intent> |
|
<data> |
<parameter> |
android:pathPattern (सिर्फ़ वेब इन्वेंट्री के लिए लागू) |
<shortcut-fulfillment> |
<capability> |
सिर्फ़ इनलाइन इन्वेंट्री के लिए लागू होता है |
<parameter> |
<shortcut-fulfillment> |
android:name |
<slice> |
<capability> |
सिर्फ़ Android स्लाइस के लिए लागू |
क्षमता स्कीमा की जानकारी
इस सेक्शन में, capability
स्कीमा एलिमेंट के बारे में बताया गया है.
<क्षमता>
capability
, जो आपके ऐप्लिकेशन के साथ काम करने वाले ऐप्लिकेशन ऐक्शन के इंटेंट के बारे में बताता है. हर
आपकी shortcuts.xml
फ़ाइल के <capability>
एलिमेंट में कम से कम एक एलिमेंट होना चाहिए
कार्रवाई को पूरा करने के लिए <intent>
.
विशेषताएं:
android:name
: बिल्ट-इन इंटेंट कार्रवाई आईडी (उदाहरण के लिए,actions.intent.CREATE_TAXI_RESERVATION
). इस्तेमाल किए जा सकने वाले प्रॉडक्ट की सूची के लिए बिल्ट-इन इंटेंट के लिए, बिल्ट-इन इंटेंट रेफ़रंस देखें.app:queryPatterns
: स्ट्रिंग अरे रिसॉर्स, जिसमें उपयोगकर्ता जोड़ें. यह एट्रिब्यूट सिर्फ़ इन पर लागू होगा कस्टम इंटेंट से अलग हो सकते हैं, क्योंकि बीआईआई में पहले से ही उपयोगकर्ताओं की ओर से किए जा रहे टास्क को ज़ाहिर करने के सामान्य तरीके या जो वे चाहते हैं.
<इंटेंट>
Android intent
एलिमेंट से पता चलता है कि उपयोगकर्ता की क्वेरी कैसी होनी चाहिए
ग्राहकों को ऐप्लिकेशन में मौजूद सुविधाओं का इस्तेमाल करके ग्राहकों को भेजना हो. डेवलपर एक से ज़्यादा <intent>
दे सकते हैं
capability
में मौजूद टैग. Assistant, उपयोगकर्ता की क्वेरी को पूरा करने की कोशिश करती है. इसके लिए, वह इनका इस्तेमाल करती है
capability
में पहले <intent>
, जिसके लिए सभी ज़रूरी पैरामीटर हैं
दिया गया है.
विशेषताएं:
android:action
: इंटेंटAction
टाइप. डिफ़ॉल्ट रूप से, यहACTION_VIEW
पर सेट होता है.android:targetClass
: टारगेट गतिविधि की क्लास, उदाहरण के लिए:"com.example.food.OrderActivity"
android:targetPackage
: इस पैकेज में, ऐक्टिविटी क्लास का टारगेट शामिल है उदाहरण:"com.example.food"
android:data
: यह फ़ील्ड<url-template>
ने ओवरराइट कर दिया है अगरintent
में टैग के बारे में बताया गया है.
<url-टेंप्लेट>
डीप लिंक यूआरआई बनाने के लिए टेंप्लेट वेब ऐप्लिकेशन या प्रॉडक्ट इस डिवाइस पर खोले जा सकते हैं. टेंप्लेट को बिल्ट-इन इंटेंट के साथ बड़ा किया जा सकता है पैरामीटर की जानकारी दें. इसके लिए एचटीटीपी यूआरएल टेंप्लेट के उदाहरण हैं. यूआरएल टेंप्लेट पर Wikipedia का लेख. कॉन्टेंट बनाने टेंप्लेट का फ़ॉर्मैट, RFC6570 यूआरआई टेंप्लेट के स्पेसिफ़िकेशन के मुताबिक है.
यूआरएल टेंप्लेट की वैल्यू के कुछ उदाहरण यहां दिए गए हैं:
टेंप्लेट | वैल्यू | बड़ा किया गया मान |
---|---|---|
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 |
यूआरएल टेंप्लेट कॉन्फ़िगर करने के बारे में ज़्यादा जानने के लिए, यहां जाएं फ़ुलफ़िलमेंट में यूआरएल टेंप्लेट.
<अतिरिक्त>
intent
के लिए अतिरिक्त डेटा के बारे में बताता है. ऐप्लिकेशन की खास सुविधाओं के लिए कार्रवाइयों के लिए, इस फ़ील्ड का इस्तेमाल सिर्फ़ इन कामों के लिए किया जाता है
capability
के लिए, फ़ोरग्राउंड ऐप्लिकेशन को शुरू करने की सुविधा चालू करना.
<पैरामीटर>
इंटेंट पैरामीटर वैल्यू के लिए बीआईआई पैरामीटर मैप करता है. ज़्यादा जानकारी के लिए, यह देखें पैरामीटर का डेटा और मैचिंग.
विशेषताएं:
android:name
: इसintent
के साथ जोड़े जाने वाले बीआईआई पैरामीटर का नाम पैरामीटर. नाम, बीआईआई पैरामीटर की लीफ़-लेवल फ़ील्ड होना चाहिए (इसके लिए उदाहरण के लिए,foodObservation.aboutFood.name
).android:key
: बीआईआई पैरामीटर वैल्यू की डेवलपर की ओर से तय की गई कुंजी. उदाहरण के लिए, तोmessage.recipient.name
बीआईआई के लिएcontact_name
तय किया जा सकता है पैरामीटर.android:mimeType
: पैरामीटर का mimeType, जैसे किtext/*
. यह फ़ील्ड, सिर्फ़ कस्टम इंटेंट के पैरामीटर के लिए ज़रूरी है.android:required
: यह बताता है कि उपयोगकर्ता क्वेरी में इसे शामिल करना ज़रूरी है या नहीं इस इंटेंट के लिए पैरामीटर का इस्तेमाल करना होगा. अगर पैरामीटर नहीं है तो Assistant उपयोगकर्ता की क्वेरी को पूरा करने के लिए अगलेcapability
के लिएintent
तय किया गया.
<data>
वेब इन्वेंट्री को parameter
से जोड़ता है.
एट्रिब्यूट:
android:pathPattern
:entity
यूआरएल का यूआरएल पैटर्न, इसका इस्तेमाल करके दिया जाएगा वेब इन्वेंट्री. यह एट्रिब्यूट दो वाइल्डकार्ड के साथ काम करता है:*
: तारा चिह्न, शून्य या उससे ज़्यादा घटनाओं के क्रम से मेल खाता है ठीक से पहले आने वाला वर्ण.*
: पीरियड के बाद तारे का निशान, शून्य या शून्य के किसी भी क्रम से मेल खाता है ज़्यादा वर्ण इस्तेमाल करें.एस्केप कैरेक्टर की ज़रूरत सिर्फ़ लिटरल
*
और\
के लिए होती है, जो कि\\*
और\\\\
के तौर पर एस्केप किया जा सकता है.
<शॉर्टकट-fulfillment>
इससे पता चलता है कि किसी intent
को इनलाइन इन्वेंट्री शॉर्टकट में
ऑर्डर पूरा करने के लिए, दिए गए पैरामीटर का इस्तेमाल किया जाएगा.
ज़्यादा जानकारी के लिए, शॉर्टकट इंटेंट का इस्तेमाल करके ऑर्डर पूरा करना देखें.
<पैरामीटर> (<shortcut-fulfillment>
के लिए)
ऐसा एट्रिब्यूट जो किसी एक बीआईआई पैरामीटर को इनलाइन इन्वेंट्री में मैप करता है शॉर्टकट फ़ुलफ़िलमेंट. ज़्यादा जानकारी के लिए, शॉर्टकट इंटेंट का इस्तेमाल करके ऑर्डर पूरा करना देखें.
विशेषता:
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-binding>
shortcut
को ऐप्लिकेशन की खास सुविधाओं के लिए कार्रवाइयों capability
से जोड़ता है. इस एलिमेंट को इसमें जोड़ना
shortcut
, Assistant
का इस्तेमाल करके, बोलकर निर्देश देने की सुविधा चालू करता है.
विशेषताएं:
android:key
: इसcapability
एट्रिब्यूट कीandroid:name
एट्रिब्यूटshortcut
इस पर सीमित है. उदाहरण के लिए,actions.intent.CREATE_TAXI_RESERVATION
.
<पैरामीटर-बाइंडिंग>
ऐसा एट्रिब्यूट जो shortcut
को किसी ऐप्लिकेशन के सिर्फ़ एक पैरामीटर से जोड़ता है. हालांकि, ऐसा करना ज़रूरी नहीं है
capability
कार्रवाइयां. अगर shortcut
के लिए parameter-binding
तय किया गया है, तो
शॉर्टकट का इस्तेमाल, बीआईआई पैरामीटर को इनलाइन इन्वेंट्री इकाई देने के लिए किया जा सकता है.
ज़्यादा जानकारी के लिए, ऐप्लिकेशन की खास सुविधाओं के लिए कार्रवाइयों के लिए इनलाइन इन्वेंट्री देखें.
विशेषताएं:
android:key
: असोसिएट किए जाने वालेcapability
बीआईआई पैरामीटर का नाम करने के लिए शॉर्टकट का इस्तेमाल करें. उदाहरण के लिए,foodObservation.aboutFood.name
.android:value
:entity
वैल्यू. यह एकentity
या संसाधन सूची.
<अतिरिक्त>
शॉर्टकट के लिए, extra
बंडल का डेटा. सिर्फ़ बिड ही एक ऐसा डेटा है
ये ऐप्लिकेशन कार्रवाइयों के shortcut
एलिमेंट से जुड़े हुए होते हैं. Accessibility यूआरएल का मतलब है
साफ़ तौर पर इकाई की पहचान करने वाला वेब पेज हो. इसका इस्तेमाल यह बताने के लिए किया जाता है कि
enum वैल्यू, अगर इंटेंट पैरामीटर का टाइप
schema.org/Enumeration. पैरामीटर फ़ील्ड के लिए यह ज़रूरी है
जिसके टाइप schema.org/Enumeration
के सब-टाइप हैं (उदाहरण के लिए:
MealTypeBreakfast
).
विशेषताएं:
android:key
: ऐप्लिकेशन की खास सुविधाओं के लिए कार्रवाइयों के लिए यह वैल्यू इस्तेमाल की जा सकती है:sameAs
android:value
:sameAs
यूआरएल की वैल्यू
ज़्यादा जानकारी के लिए, गिनती की गई पैरामीटर वैल्यू से मैच करना लेख पढ़ें.
इंटेंट पूरा करने के विकल्प
आपने <capability>
में intent
एलिमेंट तय करके बताया है कि Assistant कैसे काम करती है
उपयोगकर्ता के बोले गए निर्देशों का जवाब देता है या पूरा करता है. यह लीजिए
intent
, ऑर्डर पूरा करने के डेस्टिनेशन को कैसे लॉन्च करे, इसे कॉन्फ़िगर करने के कई तरीके हैं
जो इस बात पर निर्भर करता है कि आपका ऐप्लिकेशन नेविगेशन कैसा है.
ग्राहक को आइटम भेजने के लिए नीचे दिए गए विकल्प उपलब्ध हैं:
एक्सप्लिसिट इंटेंट:
intent
के लिएtargetClass
औरtargetPackage
एट्रिब्यूट. ऐप्लिकेशन की खास सुविधाओं के लिए कार्रवाइयों को पूरा करने का यह सुझाया गया तरीका है.डीप लिंक: Android डीप लिंक का इस्तेमाल करके,
intent
एलिमेंट में मौजूद<url-template>
टैग. यह तरीका तब फ़ायदेमंद होता है, जब आपका ऐप्लिकेशन नेविगेशन पहले से ही डीप लिंक का इस्तेमाल करता हो.इंटेंट डेटा:
intent
में फ़ुलफ़िलमेंट यूआरआई दिया जा सकता हैandroid:data
एट्रिब्यूट की वैल्यू सबमिट करें. इस फ़ील्ड को<url-template>
डेटा से बदल दिया गया है अगर वह टैगintent
में भी बताया गया है.
पैरामीटर का डेटा और मैचिंग
डिफ़ॉल्ट रूप से Assistant, उपयोगकर्ता की क्वेरी से निकाले गए बीआईआई पैरामीटर को
ऐप्लिकेशन को capability
में बताए गए Android intent
के extra
डेटा के रूप में दिखाया गया है.
इसके अलावा, आपके पास <url-template>
टैग का एलान करने का भी विकल्प है
capability
जिसमें डाइनैमिक पैरामीटर के लिए प्लेसहोल्डर मौजूद हों. यह टेंप्लेट
ऐप्लिकेशन लिंक यूआरएल का इस्तेमाल करके, आपकी किसी Android गतिविधि को मैप करता है,
कस्टम स्कीम या इंटेंट-आधारित यूआरएल.
इंटेंट एक्स्ट्रा का इस्तेमाल करना
इस उदाहरण में, capability
के लिए साफ़ तौर पर बताए गए इंटेंट के बारे में बताया गया है
ग्राहक को आइटम भेजना:
<capability android:name="actions.intent.ORDER_MENU_ITEM">
<intent
android:targetPackage="com.example.myapp"
android:targetClass="com.example.myapp.OrderMenuItemActivity">
<parameter android:name="menuItem.name" android:key="menu" />
</intent>
</capability>
ऊपर दिए गए सैंपल में, "Ok Google, कॉफ़ी पीने की जगह" से जुड़ी उपयोगकर्ता क्वेरी के लिए
उदाहरण के लिए," ऐप्लिकेशन को एक intent
मिलता है, जो कॉम्पोनेंट को शुरू करता है:
targetPackage
, targetClass
. घटक को
key = ”menu”
, value = ”latte”
.
Android डीप लिंक के लिए यूआरएल टेंप्लेट का इस्तेमाल करना
अगर आपका ऐप्लिकेशन डाइनैमिक पैरामीटर का इस्तेमाल करके, पहले से ही ऐप्लिकेशन से लिंक किए गए यूआरएल,
तो Android जनरेट करने के लिए, intent
में <url-template>
तय किया जा सकता है
कार्रवाई पूरी करने के लिए डीप लिंक. नीचे दिया गया सैंपल, <url-template>
के बारे में बताता है:
<capability android:name="actions.intent.ORDER_MENU_ITEM">
<intent>
<url-template android:value="myapp://order{?menu}" />
<parameter android:name="menuItem.name" android:key="menu" />
</intent>
</capability>
ऊपर दिए गए सैंपल में, उपयोगकर्ता की क्वेरी के लिए, जैसे कि “Ok Google, कॉफ़ी ऑर्डर करो से हटा दिया जाता है", तो ऐप्लिकेशन को जनरेट किया गया यूआरएल मिलेगा: "myapp://order?menu=latte".
बीआईआई पैरामीटर को अपने यूआरएल की किसी पोज़िशन पर मैप करने के लिए,
<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
: कस्टम इंटेंट का पैरामीटर टाइप. यह फ़ील्ड बीआईआई के लिए ज़रूरी नहीं है, जहां पैरामीटर का टाइप पता हो. कस्टम इंटेंट के लिए पैरामीटर में, काम करने वाले सिमैंटिक टाइप का एलान करना ज़रूरी है.
ज़्यादा जानकारी के लिए, कस्टम इंटेंट देखें.