একবার আপনি আপনার অ্যাপ-মধ্যস্থ কার্যকারিতা এবং প্রয়োগ করার জন্য সংশ্লিষ্ট অন্তর্নির্মিত অভিপ্রায় (BII) সনাক্ত করার পরে, একটি shortcuts.xml
রিসোর্স ফাইলে একটি capability
উপাদান সংজ্ঞায়িত করে আপনার কার্যকারিতা সমর্থন করে এমন BII ঘোষণা করুন৷ একটি BII কে একটি capability
হিসাবে ঘোষণা করা আপনার অ্যাপে সেই শব্দার্থিক অভিপ্রায়ের জন্য সমর্থন নিবন্ধন করে এবং Google সহকারী ব্যবহার করে অভিপ্রায়ের ভয়েস কোয়েরি পূরণ করতে সক্ষম করে।
সহকারী ব্যবহারকারীর কোয়েরি থেকে প্যারামিটার বের করতে প্রাকৃতিক ভাষা প্রক্রিয়াকরণ ব্যবহার করে। অন্তর্নির্মিত ইন্টেন্ট রেফারেন্স সেই ক্ষেত্রগুলিকে তালিকাভুক্ত করে যা প্রতিটি BII একটি সংশ্লিষ্ট ব্যবহারকারীর ক্যোয়ারী থেকে বের করতে সক্ষম। উদাহরণ স্বরূপ, যদি কোনো ব্যবহারকারী আপনার অ্যাপে [ actions.intent.GET_FOOD_OBSERVATION
][] ক্যাপাবিলিটি ব্যবহার করে বলেন, "Hey Google, ExampleApp কে জিজ্ঞাসা করুন আমি গত শুক্রবার দুপুরের খাবারে কি খেয়েছি" , সহকারী ব্যবহারকারীর অনুরোধ থেকে নিম্নলিখিত BII প্যারামিটারগুলি বের করে :
-
foodObservation.forMeal
= "https://schema.googleapis.com/MealTypeLunch" -
foodObservation.startTime
= "2024-09-06T00:00:00" -
foodObservation.endTime
= "2024-09-06T23:59:59"
সহকারী BII পরামিতিগুলিকে capability
মধ্যে সংজ্ঞায়িত পরিপূর্ণতার intent
পাস করে। এক বা একাধিক intent
উপাদানগুলিকে বিভিন্ন উপায়ে মিটমাট করার ক্ষমতার মধ্যে সংজ্ঞায়িত করা যেতে পারে যা একজন ব্যবহারকারী একটি BII আহ্বান করতে পারে। উদাহরণস্বরূপ, আপনি একটি পূর্ণতা intent
নির্ধারণ করতে পারেন যার জন্য উপরের উদাহরণে উভয় BII পরামিতি প্রয়োজন। তারপরে আপনি একটি দ্বিতীয় উদ্দেশ্য সংজ্ঞায়িত করতে পারেন যার জন্য একটি একক BII প্যারামিটার প্রয়োজন, foodObservation.forMeal
, যা একটি নির্দিষ্ট দিনে সমস্ত খাবারের জন্য রিপোর্ট করে, যেমন "Hey Google, ExampleApp কে জিজ্ঞাসা করুন আমি দুপুরের খাবারে কি খেয়েছি।"
ওভারভিউ
আপনি আপনার অ্যাপ প্রকল্পের res/xml
ডিরেক্টরিতে রাখা একটি shortcuts.xml
ফাইল ব্যবহার করে অ্যাপ অ্যাকশন কনফিগার করেন এবং তারপরে আপনার অ্যাপ ম্যানিফেস্টে shortcuts.xml
এর একটি রেফারেন্স তৈরি করেন। এই পদক্ষেপগুলি অনুসরণ করে আপনার অ্যাপ ম্যানিফেস্টে shortcuts.xml
এর একটি রেফারেন্স যোগ করুন:
আপনার অ্যাপের ম্যানিফেস্ট ফাইলে (
AndroidManifest.xml
), এমন একটি কার্যকলাপ খুঁজুন যার অভিপ্রায় ফিল্টারগুলিandroid.intent.action.MAIN
অ্যাকশন এবংandroid.intent.category.LAUNCHER
বিভাগে সেট করা আছে৷Activity
একটি<meta-data>
ট্যাগ ব্যবহার করেAndroidManifest.xml
এshortcuts.xml
এর একটি রেফারেন্স যোগ করুন যাতেMAIN
এবংLAUNCHER
উভয়ের জন্যই উদ্দেশ্য ফিল্টার রয়েছে, নিম্নরূপ:<meta-data android:name="android.app.shortcuts" android:resource="@xml/shortcuts" />
উপরের উদাহরণটি APK-এ xml/shortcuts.xml
ফাইলের জন্য একটি XML সংস্থান ঘোষণা করে। শর্টকাট কনফিগার করার বিষয়ে আরও বিস্তারিত জানার জন্য, অ্যান্ড্রয়েড ডেভেলপার ডকুমেন্টেশনে স্ট্যাটিক শর্টকাট তৈরি করুন দেখুন।
আপনার Android প্রকল্পে Jetpack লাইব্রেরি androidx.core:core:1.6.0
(বা বড়) প্রয়োজন যাতে সংকলন ত্রুটিগুলি এড়াতে shortcuts.xml
এ অ্যাপ অ্যাকশনের ক্ষমতা সংজ্ঞায়িত করা হয়। বিস্তারিত জানার জন্য, Android Jetpack এর সাথে শুরু করা দেখুন।
স্ট্যাটিক শর্টকাট
আপনার capability
সংজ্ঞায়িত করার সময়, আপনি সক্ষমতার কার্যকারিতা প্রসারিত করতে shortcuts.xml
এ স্ট্যাটিক shortcut
উপাদান ঘোষণা করতে পারেন। আপনি যখন Google Play Console-এ রিলিজ আপলোড করেন তখন অ্যাসিস্ট্যান্ট দ্বারা স্ট্যাটিক শর্টকাট ইনজেস্ট করা হয়। যেহেতু স্ট্যাটিক শর্টকাটগুলি শুধুমাত্র নতুন রিলিজ তৈরি করে তৈরি এবং আপডেট করা যেতে পারে, তাই আপনার অ্যাপে সাধারণ ক্রিয়াকলাপ এবং বিষয়বস্তু হাইলাইট করার জন্য এগুলি সবচেয়ে কার্যকর।
আপনি স্ট্যাটিক শর্টকাট সহ নিম্নলিখিত অ্যাপ অ্যাকশন কার্যকারিতা সক্ষম করতে পারেন:
ক্ষমতা শর্টকাট . শর্টকাট তৈরি করুন যা পূর্বনির্ধারিত
intent
প্যারামিটার মান ধারণকারী আপনারcapability
একটি উদাহরণ চালু করে। উদাহরণ স্বরূপ, আপনি একটি অ্যাপ শর্টকাট ঘোষণা করতে পারেন "একটি দৌড় শুরু করুন" যা আপনার ফিটনেস অ্যাপেSTART_EXERCISE
BII সক্ষমতাকে আহ্বান করে৷এই শর্টকাটগুলিতে
intent
,shortLabel
এবংlongLabel
বৈশিষ্ট্য রয়েছে, যা এগুলিকে প্রোঅ্যাকটিভ সারফেস, যেমন অ্যাসিস্ট্যান্ট বা অ্যান্ড্রয়েড লঞ্চারে একটি অ্যাপ আইকন দীর্ঘক্ষণ চাপার সময় চিপ হিসাবে প্রস্তাবিত এবং পূরণ করার যোগ্য করে তোলে। একটি অ্যাকশন শর্টকাট একটি<capability-binding>
ট্যাগ ব্যবহার করে একটিcapability
সাথে যুক্ত করে নিচে বিস্তারিতভাবে একটি সত্তা শর্টকাট হিসেবেও কাজ করতে পারে।সত্তা শর্টকাট এন্টিটি শর্টকাট একটি
capability
ভয়েস ক্যোয়ারী পূরণের জন্য সমর্থিত প্যারামিটার মানগুলির একটি তালিকা প্রদান করে৷ উদাহরণ স্বরূপ, ব্যায়ামের প্রকারের একটি তালিকা সহ একটি সত্তা শর্টকাট ("হাইক," "রান," ইত্যাদি)START_EXERCISE
ক্ষমতারexercise.name
BII প্যারামিটারের সাথে আবদ্ধ৷ যদি কোনো ব্যবহারকারীর উচ্চারণ কোনো সত্তার সাথে মিলে যায়, তাহলে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> | শুধুমাত্র অ্যান্ড্রয়েড স্লাইস জন্য প্রযোজ্য |
ক্ষমতা স্কিমা বিবরণ
এই বিভাগে capability
স্কিমা উপাদান বর্ণনা.
<সামর্থ্য>
একটি capability
যা আপনার অ্যাপ সমর্থন করে অ্যাপ অ্যাকশন অভিপ্রায় নির্ধারণ করে। আপনার shortcuts.xml
ফাইলের প্রতিটি <capability>
উপাদানকে অবশ্যই কর্মের পরিপূর্ণতা পরিচালনা করতে কমপক্ষে একটি <intent>
প্রদান করতে হবে।
গুণাবলী:
-
android:name
: অন্তর্নির্মিত অভিপ্রায় অ্যাকশন আইডি (উদাহরণস্বরূপ, [actions.intent.GET_FOOD_OBSERVATION
][])। সমর্থিত অন্তর্নির্মিত অভিপ্রায়গুলির একটি তালিকার জন্য, অন্তর্নির্মিত অভিপ্রায় উল্লেখ দেখুন। -
app:queryPatterns
: এই উদ্দেশ্যের জন্য ব্যবহারকারীর কাছ থেকে প্রত্যাশিত প্রশ্নের একটি স্ট্রিং অ্যারে রিসোর্স। এই অ্যাট্রিবিউটটি শুধুমাত্র কাস্টম ইন্টেন্টের ক্ষেত্রে প্রযোজ্য, কারণ BII-তে ইতিমধ্যেই ব্যবহারকারীরা যে কাজগুলি করার চেষ্টা করছেন বা তারা যে তথ্য খুঁজছেন তা প্রকাশ করার সাধারণ উপায়গুলির মডেল অন্তর্ভুক্ত করে৷
<ইন্টেন্ট>
অ্যাপ-মধ্যস্থ কার্যকারিতা ব্যবহার করে ব্যবহারকারীর প্রশ্ন কীভাবে পূরণ করা উচিত তা নির্ধারণ করে Android intent
উপাদান। বিকাশকারীরা একটি capability
একাধিক <intent>
ট্যাগ প্রদান করতে পারে। অ্যাসিস্ট্যান্ট প্রথম <intent>
capability
করে একটি ব্যবহারকারীর কোয়েরি পূরণ করার চেষ্টা করে যার জন্য সমস্ত প্রয়োজনীয় প্যারামিটার দেওয়া আছে।
গুণাবলী:
-
android:action
: উদ্দেশ্যAction
টাইপ।ACTION_VIEW
এ ডিফল্ট। -
android:targetClass
: টার্গেট অ্যাক্টিভিটি ক্লাস, উদাহরণস্বরূপ:"com.example.exercise.ExerciseActivity"
-
android:targetPackage
: টার্গেট অ্যাক্টিভিটি ক্লাস ধারণকারী প্যাকেজ, উদাহরণস্বরূপ:"com.example.exercise
-
android:data
: এই ক্ষেত্রটি<url-template>
দ্বারা ওভাররাইট করা হয় যদি সেই ট্যাগটিintent
ঘোষণা করা হয়।
<url-টেমপ্লেট>
ডিভাইসে খোলার জন্য একটি গভীর লিঙ্ক URI নির্মাণের জন্য টেমপ্লেট। টেমপ্লেটের জন্য সমস্ত প্রয়োজনীয় পরামিতি উপলব্ধ থাকলে অন্তর্নির্মিত অভিপ্রায় পরামিতিগুলির সাথে টেমপ্লেটটি প্রসারিত করা যেতে পারে। HTTP URL টেমপ্লেটের উদাহরণের জন্য, URL টেমপ্লেটের উইকিপিডিয়া নিবন্ধটি দেখুন। টেমপ্লেট বিন্যাস RFC6570 URI টেমপ্লেট স্পেসিফিকেশন অনুসরণ করে।
নীচে URL টেমপ্লেট মানগুলির কিছু উদাহরণ রয়েছে:
টেমপ্লেট | মূল্যবোধ | প্রসারিত মান |
---|---|---|
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
জন্য [ফোরগ্রাউন্ড অ্যাপ ইনভোকেশন][] সক্ষম করতে ব্যবহার করা হয়।
<প্যারামিটার>
উদ্দেশ্য প্যারামিটার মানগুলির সাথে একটি BII প্যারামিটার ম্যাপ করে৷ আরও তথ্যের জন্য, প্যারামিটার ডেটা এবং ম্যাচিং দেখুন।
গুণাবলী:
-
android:name
: এইintent
প্যারামিটারের সাথে যুক্ত করার জন্য BII প্যারামিটারের নাম। নামটি BII প্যারামিটারের একটি পাতা-স্তরের ক্ষেত্র হওয়া উচিত (উদাহরণস্বরূপ,foodObservation.aboutFood.name
)। -
android:key
: একটি BII প্যারামিটার মানের বিকাশকারী-সংজ্ঞায়িত কী। উদাহরণস্বরূপ, আপনিmessage.recipient.name
BII প্যারামিটারের জন্যcontact_name
সংজ্ঞায়িত করতে পারেন। -
android:mimeType
: প্যারামিটারের mimeType, যেমনtext/*
। এই ক্ষেত্রটি শুধুমাত্র কাস্টম ইন্টেন্টের প্যারামিটারের জন্য প্রয়োজন। -
android:required
: এই অভিপ্রায় পূরণের জন্য ব্যবহার করার জন্য ব্যবহারকারীর কোয়েরিতে এই প্যারামিটারটি অন্তর্ভুক্ত করতে হবে কিনা তা ঘোষণা করে। প্যারামিটার উপলব্ধ না হলে, সহকারীcapability
জন্য সংজ্ঞায়িত পরবর্তীintent
ব্যবহার করে ব্যবহারকারীর প্রশ্ন পূরণ করার চেষ্টা করে।
<শর্টকাট-পূরণ>
নির্দিষ্ট করে যে একটি নির্দিষ্ট প্যারামিটারের জন্য একটি ইনলাইন ইনভেন্টরি শর্টকাটে সংজ্ঞায়িত একটি intent
পূরণের জন্য ব্যবহার করা হবে। বিশদ বিবরণের জন্য, শর্টকাট উদ্দেশ্য ব্যবহার করে পূর্ণতা দেখুন।
<প্যারামিটার> ( <shortcut-fulfillment>
জন্য>)
ঐচ্ছিক বৈশিষ্ট্য যা ইনলাইন ইনভেন্টরি শর্টকাট পূরণের জন্য একটি একক BII প্যারামিটার ম্যাপ করে। বিশদ বিবরণের জন্য, শর্টকাট উদ্দেশ্য ব্যবহার করে পূর্ণতা দেখুন।
বৈশিষ্ট্য:
-
android:name
: ইনলাইন ইনভেন্টরি শর্টকাট পূরণের সাথে যুক্ত করার জন্য BII প্যারামিটারের নাম। নামটি BII প্যারামিটারের একটি পাতা-স্তরের ক্ষেত্র হওয়া উচিত (উদাহরণস্বরূপ,menuItem.name
)।
<স্লাইস>
একটি অ্যান্ড্রয়েড স্লাইস হিসাবে এই capability
সাথে মেলে এমন একটি প্রশ্নের ফলাফল এম্বেড করতে সহায়ককে সক্ষম করে৷ বিশদ বিবরণের জন্য, Android স্লাইসের সাথে অ্যাপ অ্যাকশন একীভূত করুন দেখুন।
শর্টকাট স্কিমা
নিম্নলিখিত সারণী shortcut
উপাদানগুলির বৈশিষ্ট্যগুলি বর্ণনা করে যা অ্যাপ অ্যাকশন কার্যকারিতা সক্ষম করতে ব্যবহৃত হয়৷ একটি ট্যাগ অন্তর্ভুক্ত করার সময়, "ঐচ্ছিক" হিসাবে চিহ্নিত না হলে এর সমস্ত বৈশিষ্ট্য প্রয়োজন।
Shortcuts.xml ট্যাগ | এর মধ্যে রয়েছে | গুণাবলী |
---|---|---|
<shortcut> | <shortcuts> | |
<intent> | <shortcut> | |
<capability-binding> |
| |
<parameter-binding> | <capability-binding> | |
<extra> | <shortcut> | শুধুমাত্র Enum প্যারামিটার মিলের জন্য প্রযোজ্য। |
শর্টকাট স্কিমার বিবরণ
এই বিভাগে shortcut
স্কিমা উপাদান বর্ণনা করা হয়.
<শর্টকাট>
একটি Android <shortcut>
সংজ্ঞায়িত কিছু নির্দিষ্ট বৈশিষ্ট্য সহ shortcuts.xml
এ যা অ্যাপ অ্যাকশনের জন্য প্রাসঙ্গিক। shortcutShortLabel
এবং shortcutLongLabel
ক্ষেত্রগুলির জন্য স্ট্রিং মানগুলি APK এর স্ট্রিং সংস্থানগুলির মাধ্যমে উল্লেখ করা হয়৷
গুণাবলী:
-
android:shortcutId
: এই শর্টকাটের জন্য শনাক্তকারী। -
android:shortcutShortLabel
: স্ট্রিং রিসোর্স একটি সংক্ষিপ্ত শর্টকাট বাক্যাংশ উপস্থাপন করে। উদাহরণস্বরূপ,"@string/callDavidShort"
মান প্রতিনিধিত্ব করে "ডেভিডকে কল করুন।" -
android:shortcutLongLabel
: স্ট্রিং রিসোর্স একটি দীর্ঘ শর্টকাট বাক্যাংশের প্রতিনিধিত্ব করে। উদাহরণস্বরূপ,"@string/callDavidLong"
মান প্রতিনিধিত্ব করে "ডেভিডকে একটি অডিও কল করুন।"
<ইন্টেন্ট>
এই শর্টকাটের সাথে যুক্ত Android অভিপ্রায়। এই intent
কার্যকর করা হয় যখন কোনও ব্যবহারকারী ভয়েস বা স্পর্শ ব্যবহার করে এই শর্টকাটটি চালু করেন।
shortcut
অভিপ্রায় বৈশিষ্ট্যগুলি capability
intent
বৈশিষ্ট্যগুলির সাথে অভিন্ন৷
<ক্যাপাবিলিটি-বাইন্ডিং>
একটি অ্যাপ অ্যাকশন capability
একটি shortcut
যুক্ত করে। একটি shortcut
এই উপাদানটি যোগ করা হলে এটি Assistant
ব্যবহার করে ভয়েস পূরণের জন্য সক্ষম করে।
গুণাবলী:
-
android:key
: এইshortcut
capability
android:name
বৈশিষ্ট্যটি আবদ্ধ। উদাহরণস্বরূপ,actions.intent.START_EXERCISE
।
<প্যারামিটার-বাইন্ডিং>
ঐচ্ছিক বৈশিষ্ট্য যা একটি অ্যাপ অ্যাকশন capability
একটি একক প্যারামিটারের সাথে একটি shortcut
যুক্ত করে। যদি একটি shortcut
জন্য একটি parameter-binding
সংজ্ঞায়িত করা হয়, তাহলে শর্টকাটটি একটি BII প্যারামিটারে একটি ইনলাইন ইনভেন্টরি সত্তা প্রদান করতে ব্যবহার করা যেতে পারে। আরও বিশদ বিবরণের জন্য, অ্যাপ অ্যাকশনের জন্য ইনলাইন ইনভেন্টরি দেখুন।
গুণাবলী:
-
android:key
: এই শর্টকাটটির সাথে যুক্ত করারcapability
BII প্যারামিটারের নাম। উদাহরণস্বরূপ,exercise.name
। -
android:value
:entity
মান। এটি একটি এককentity
বা একটি সম্পদ তালিকা হতে পারে।
<অতিরিক্ত>
শর্টকাটের জন্য extra
বান্ডেল ডেটা। sameAs হল অ্যাপ অ্যাকশন shortcut
উপাদানগুলির সাথে প্রাসঙ্গিক একমাত্র ডেটা৷ sameAs URL একটি রেফারেন্স ওয়েব পৃষ্ঠাকে বোঝায় যা দ্ব্যর্থহীনভাবে সত্তাকে শনাক্ত করে৷ যদি এবং শুধুমাত্র যদি উদ্দেশ্য প্যারামিটারের ধরনটি schema.org/Enumeration- এর একটি উপপ্রকার হয় তাহলে একটি enum মান নির্দিষ্ট করতে ব্যবহৃত হয়। এটি প্যারামিটার ক্ষেত্রগুলির জন্য প্রয়োজন যার প্রকারগুলি schema.org/Enumeration
এর উপপ্রকার (উদাহরণস্বরূপ: MealTypeBreakfast
)।
গুণাবলী:
-
android:key
: অ্যাপ অ্যাকশনের জন্য সমর্থিত মান হল:sameAs
-
android:value
:sameAs
URL মান
আরও বিশদ বিবরণের জন্য, গণনাকৃত পরামিতি মানগুলির মিল দেখুন।
অভিপ্রায় পূরণের বিকল্প
অ্যাসিস্ট্যান্ট কীভাবে সেই সামর্থ্যের সাথে মেলে এমন ব্যবহারকারীর ভয়েস কমান্ডের প্রতি কীভাবে সাড়া দেয় বা পূরণ করে তা ঘোষণা করার জন্য আপনি <capability>
এর মধ্যে intent
উপাদানগুলিকে সংজ্ঞায়িত করেন। আপনার অ্যাপ নেভিগেশন কীভাবে গঠন করা হয়েছে তার উপর নির্ভর করে আপনার অ্যাপে একটি intent
কীভাবে একটি পূরণের গন্তব্য চালু করে তা কনফিগার করার বিভিন্ন উপায় রয়েছে।
নিম্নলিখিত পূর্ণতা বিকল্প উপলব্ধ:
স্পষ্ট অভিপ্রায় :
intent
জন্যtargetClass
এবংtargetPackage
বৈশিষ্ট্যগুলি সংজ্ঞায়িত করে একটি নির্দিষ্ট অ্যাপ উপাদান চালু করুন। এটি প্রস্তাবিত অ্যাপ অ্যাকশন পূরণের পদ্ধতি।গভীর লিঙ্ক :
intent
উপাদানের মধ্যে একটি<url-template>
ট্যাগ সংজ্ঞায়িত করে Android ডিপ লিঙ্কগুলি ব্যবহার করে অ্যাপের গন্তব্যগুলি চালু করুন। এই পদ্ধতিটি উপযোগী যদি আপনার অ্যাপ নেভিগেশন ইতিমধ্যেই গভীর লিঙ্কের উপর নির্ভর করে।ইনটেন্ট ডেটা : আপনি
intent
android:data
অ্যাট্রিবিউটে একটি পূরণের URI প্রদান করতে পারেন। এই ক্ষেত্রটি<url-template>
ডেটা দ্বারা ওভাররাইট করা হয় যদি সেই ট্যাগটিintent
মধ্যেও সংজ্ঞায়িত করা হয়।
প্যারামিটার ডেটা এবং মিল
ডিফল্টরূপে, অ্যাসিস্ট্যান্ট ব্যবহারকারীর ক্যোয়ারী থেকে বের করা BII প্যারামিটারগুলিকে আপনার অ্যাপে capability
সংজ্ঞায়িত Android intent
extra
ডেটা হিসাবে পাঠায়।
বিকল্পভাবে, আপনি capability
মধ্যে একটি <url-template>
ট্যাগ ঘোষণা করতে পারেন যাতে গতিশীল পরামিতির জন্য স্থানধারক রয়েছে। এই টেমপ্লেটটি একটি অ্যাপ লিঙ্ক ইউআরএল , একটি কাস্টম স্কিম, বা একটি ইন্টেন্ট-ভিত্তিক URL ব্যবহার করে আপনার 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>
উপরের নমুনাটি দেওয়া হয়েছে, "Hey Google, ExampleApp থেকে একটি ল্যাটে অর্ডার করুন" এর মতো একটি ব্যবহারকারীর প্রশ্নের জন্য অ্যাপটি এমন একটি intent
পায় যা উপাদানটিকে আহ্বান করে: targetPackage
, targetClass
। কম্পোনেন্ট key = "exercise"
, value = "Running"
সহ একটি অতিরিক্ত পায়।
অ্যান্ড্রয়েড গভীর লিঙ্কের জন্য একটি URL টেমপ্লেট ব্যবহার করা
যদি আপনার অ্যাপ ইতিমধ্যেই ডায়নামিক প্যারামিটার সহ অ্যাপ-লিঙ্ক করা URLগুলি পরিচালনা করতে সক্ষম হয়, তাহলে আপনি পরিপূর্ণতার জন্য 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>
উপরের নমুনাটি দেওয়া হলে, "Hey Google, ExampleApp থেকে একটি ল্যাটে অর্ডার করুন" এর মতো ব্যবহারকারীর প্রশ্নের জন্য অ্যাপটি জেনারেট করা URLটি পায়: "myapp://start?exercise=Running"।
BII প্যারামিটারটিকে আপনার URL-এ একটি অবস্থানে ম্যাপ করতে, আপনি <parameter>
ট্যাগের android:name
বৈশিষ্ট্যটি ব্যবহার করুন। এই অ্যাট্রিবিউটটি ইউআরএল টেমপ্লেটের android:key
মানের সাথে মিলে যা আপনি ব্যবহারকারীর তথ্য দিয়ে প্রতিস্থাপন করতে চান। android:key
মান আপনার <url-template>
-এ উপস্থিত থাকতে হবে এবং কোঁকড়া ধনুর্বন্ধনী ( {}
) দ্বারা আবদ্ধ থাকতে হবে।
গণনা করা পরামিতি মান মেলে
কিছু BII পরামিতি আপনার পূর্ণতার অভিপ্রায়ে গণিত মান প্রদান করে, উদাহরণস্বরূপ, RECORD_FOOD_OBSERVATION
BII-এর সমর্থিত পাঠ্য মান । এই প্যারামিটারগুলির জন্য, সহকারী ব্যবহারকারীর কোয়েরি ("ব্রেকফাস্ট") এমন একটি সত্তার সাথে মেলে যার sameAs
মান enum স্কিমা URL ( https://schema.googleapis.com/MealTypeBreakfast
) এর সাথে মেলে। একটি সমর্থিত entity
জন্য enum মান সংযুক্ত করতে, আপনি আপনার shortcut
sameAs
অ্যাসোসিয়েশন ঘোষণা করেন। নিম্নলিখিত নমুনা একটি ইনলাইন সত্তা শর্টকাটের জন্য 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
এ উপলব্ধ।
অ্যাপ অ্যাকশনের জন্য ইনলাইন ইনভেন্টরি
কিছু BII প্যারামিটারের জন্য, শর্টকাটগুলি শর্টকাট shortcuts.xml
এ নির্দিষ্ট করা সমর্থিত সত্তার সেটে সত্তা নিষ্কাশনকে গাইড করতে ব্যবহার করা যেতে পারে, যা ইনলাইন ইনভেন্টরি নামে পরিচিত৷ বিস্তারিত জানার জন্য, ইনলাইন ইনভেন্টরি দেখুন।
কাস্টম উদ্দেশ্য
কাস্টম অভিপ্রায়গুলি shortcuts.xml
এ ঘোষণা করা যেতে পারে ভয়েস সক্ষম করার বৈশিষ্ট্যগুলি যা উপলব্ধ BIIগুলির সাথে মেলে না৷ কার্যকারিতা একটি BII সংজ্ঞার মতো হলেও, কাস্টম ইন্টেন্টের জন্য shortcuts.xml
এ দুটি অতিরিক্ত বৈশিষ্ট্য প্রয়োজন:
app:queryPatterns
: অ্যারে রিসোর্স যা একটি কাস্টম অভিপ্রায়ের জন্য বিভিন্ন ক্যোয়ারী প্যাটার্ন ঘোষণা করে।android:mimeType
: একটি কাস্টম অভিপ্রায়ের পরামিতি প্রকার। এই ক্ষেত্রটি BII-এর জন্য প্রয়োজন হয় না, যেখানে প্যারামিটারের ধরন জানা থাকে। কাস্টম ইন্টেন্ট প্যারামিটারের জন্য, একটি সমর্থিত শব্দার্থিক প্রকার ঘোষণা করতে হবে।
আরো বিস্তারিত জানার জন্য, কাস্টম ইন্টেন্ট দেখুন।
, একবার আপনি আপনার অ্যাপ-মধ্যস্থ কার্যকারিতা এবং প্রয়োগ করার জন্য সংশ্লিষ্ট অন্তর্নির্মিত অভিপ্রায় (BII) সনাক্ত করার পরে, একটি shortcuts.xml
রিসোর্স ফাইলে একটি capability
উপাদান সংজ্ঞায়িত করে আপনার কার্যকারিতা সমর্থন করে এমন BII ঘোষণা করুন৷ একটি BII কে একটি capability
হিসাবে ঘোষণা করা আপনার অ্যাপে সেই শব্দার্থিক অভিপ্রায়ের জন্য সমর্থন নিবন্ধন করে এবং Google সহকারী ব্যবহার করে অভিপ্রায়ের ভয়েস কোয়েরি পূরণ করতে সক্ষম করে।
সহকারী ব্যবহারকারীর কোয়েরি থেকে প্যারামিটার বের করতে প্রাকৃতিক ভাষা প্রক্রিয়াকরণ ব্যবহার করে। অন্তর্নির্মিত ইন্টেন্ট রেফারেন্স সেই ক্ষেত্রগুলিকে তালিকাভুক্ত করে যা প্রতিটি BII একটি সংশ্লিষ্ট ব্যবহারকারীর ক্যোয়ারী থেকে বের করতে সক্ষম। উদাহরণ স্বরূপ, যদি কোনো ব্যবহারকারী আপনার অ্যাপে [ actions.intent.GET_FOOD_OBSERVATION
][] ক্যাপাবিলিটি ব্যবহার করে বলেন, "Hey Google, ExampleApp কে জিজ্ঞাসা করুন আমি গত শুক্রবার দুপুরের খাবারে কি খেয়েছি" , সহকারী ব্যবহারকারীর অনুরোধ থেকে নিম্নলিখিত BII প্যারামিটারগুলি বের করে :
-
foodObservation.forMeal
= "https://schema.googleapis.com/MealTypeLunch" -
foodObservation.startTime
= "2024-09-06T00:00:00" -
foodObservation.endTime
= "2024-09-06T23:59:59"
সহকারী BII পরামিতিগুলিকে capability
মধ্যে সংজ্ঞায়িত পরিপূর্ণতার intent
পাস করে। এক বা একাধিক intent
উপাদানগুলিকে বিভিন্ন উপায়ে মিটমাট করার ক্ষমতার মধ্যে সংজ্ঞায়িত করা যেতে পারে যা একজন ব্যবহারকারী একটি BII আহ্বান করতে পারে। উদাহরণস্বরূপ, আপনি একটি পূর্ণতা intent
নির্ধারণ করতে পারেন যার জন্য উপরের উদাহরণে উভয় BII পরামিতি প্রয়োজন। তারপরে আপনি একটি দ্বিতীয় উদ্দেশ্য সংজ্ঞায়িত করতে পারেন যার জন্য একটি একক BII প্যারামিটার প্রয়োজন, foodObservation.forMeal
, যা একটি নির্দিষ্ট দিনে সমস্ত খাবারের জন্য রিপোর্ট করে, যেমন "Hey Google, ExampleApp কে জিজ্ঞাসা করুন আমি দুপুরের খাবারে কি খেয়েছি।"
ওভারভিউ
আপনি আপনার অ্যাপ প্রকল্পের res/xml
ডিরেক্টরিতে রাখা একটি shortcuts.xml
ফাইল ব্যবহার করে অ্যাপ অ্যাকশন কনফিগার করেন এবং তারপরে আপনার অ্যাপ ম্যানিফেস্টে shortcuts.xml
এর একটি রেফারেন্স তৈরি করেন। এই পদক্ষেপগুলি অনুসরণ করে আপনার অ্যাপ ম্যানিফেস্টে shortcuts.xml
এর একটি রেফারেন্স যোগ করুন:
আপনার অ্যাপের ম্যানিফেস্ট ফাইলে (
AndroidManifest.xml
), এমন একটি কার্যকলাপ খুঁজুন যার অভিপ্রায় ফিল্টারগুলিandroid.intent.action.MAIN
অ্যাকশন এবংandroid.intent.category.LAUNCHER
বিভাগে সেট করা আছে৷Activity
একটি<meta-data>
ট্যাগ ব্যবহার করেAndroidManifest.xml
এshortcuts.xml
এর একটি রেফারেন্স যোগ করুন যাতেMAIN
এবংLAUNCHER
উভয়ের জন্যই উদ্দেশ্য ফিল্টার রয়েছে, নিম্নরূপ:<meta-data android:name="android.app.shortcuts" android:resource="@xml/shortcuts" />
উপরের উদাহরণটি APK-এ xml/shortcuts.xml
ফাইলের জন্য একটি XML সংস্থান ঘোষণা করে। শর্টকাট কনফিগার করার বিষয়ে আরও বিস্তারিত জানার জন্য, অ্যান্ড্রয়েড ডেভেলপার ডকুমেন্টেশনে স্ট্যাটিক শর্টকাট তৈরি করুন দেখুন।
আপনার Android প্রকল্পে Jetpack লাইব্রেরি androidx.core:core:1.6.0
(বা বড়) প্রয়োজন যাতে সংকলন ত্রুটিগুলি এড়াতে shortcuts.xml
এ অ্যাপ অ্যাকশনের ক্ষমতা সংজ্ঞায়িত করা হয়। বিস্তারিত জানার জন্য, Android Jetpack এর সাথে শুরু করা দেখুন।
স্ট্যাটিক শর্টকাট
আপনার capability
সংজ্ঞায়িত করার সময়, আপনি সক্ষমতার কার্যকারিতা প্রসারিত করতে shortcuts.xml
এ স্ট্যাটিক shortcut
উপাদান ঘোষণা করতে পারেন। আপনি যখন Google Play Console-এ রিলিজ আপলোড করেন তখন অ্যাসিস্ট্যান্ট দ্বারা স্ট্যাটিক শর্টকাট ইনজেস্ট করা হয়। যেহেতু স্ট্যাটিক শর্টকাটগুলি শুধুমাত্র নতুন রিলিজ তৈরি করে তৈরি এবং আপডেট করা যেতে পারে, তাই আপনার অ্যাপে সাধারণ ক্রিয়াকলাপ এবং বিষয়বস্তু হাইলাইট করার জন্য এগুলি সবচেয়ে কার্যকর।
আপনি স্ট্যাটিক শর্টকাট সহ নিম্নলিখিত অ্যাপ অ্যাকশন কার্যকারিতা সক্ষম করতে পারেন:
ক্ষমতা শর্টকাট . শর্টকাট তৈরি করুন যা পূর্বনির্ধারিত
intent
প্যারামিটার মান ধারণকারী আপনারcapability
একটি উদাহরণ চালু করে। উদাহরণ স্বরূপ, আপনি একটি অ্যাপ শর্টকাট ঘোষণা করতে পারেন "একটি দৌড় শুরু করুন" যা আপনার ফিটনেস অ্যাপেSTART_EXERCISE
BII সক্ষমতাকে আহ্বান করে৷এই শর্টকাটগুলিতে
intent
,shortLabel
এবংlongLabel
বৈশিষ্ট্য রয়েছে, যা এগুলিকে প্রোঅ্যাকটিভ সারফেস, যেমন অ্যাসিস্ট্যান্ট বা অ্যান্ড্রয়েড লঞ্চারে একটি অ্যাপ আইকন দীর্ঘক্ষণ চাপার সময় চিপ হিসাবে প্রস্তাবিত এবং পূরণ করার যোগ্য করে তোলে। একটি অ্যাকশন শর্টকাট একটি<capability-binding>
ট্যাগ ব্যবহার করে একটিcapability
সাথে যুক্ত করে নিচে বিস্তারিতভাবে একটি সত্তা শর্টকাট হিসেবেও কাজ করতে পারে।সত্তা শর্টকাট এন্টিটি শর্টকাট একটি
capability
ভয়েস ক্যোয়ারী পূরণের জন্য সমর্থিত প্যারামিটার মানগুলির একটি তালিকা প্রদান করে৷ উদাহরণ স্বরূপ, ব্যায়ামের প্রকারের একটি তালিকা সহ একটি সত্তা শর্টকাট ("হাইক," "রান," ইত্যাদি)START_EXERCISE
ক্ষমতারexercise.name
BII প্যারামিটারের সাথে আবদ্ধ৷ যদি কোনো ব্যবহারকারীর উচ্চারণ কোনো সত্তার সাথে মিলে যায়, তাহলে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> | শুধুমাত্র অ্যান্ড্রয়েড স্লাইস জন্য প্রযোজ্য |
ক্ষমতা স্কিমা বিবরণ
এই বিভাগে capability
স্কিমা উপাদান বর্ণনা.
<সামর্থ্য>
একটি capability
যা আপনার অ্যাপ সমর্থন করে অ্যাপ অ্যাকশন অভিপ্রায় নির্ধারণ করে। আপনার shortcuts.xml
ফাইলের প্রতিটি <capability>
উপাদানকে অবশ্যই কর্মের পরিপূর্ণতা পরিচালনা করতে কমপক্ষে একটি <intent>
প্রদান করতে হবে।
গুণাবলী:
-
android:name
: অন্তর্নির্মিত অভিপ্রায় অ্যাকশন আইডি (উদাহরণস্বরূপ, [actions.intent.GET_FOOD_OBSERVATION
][])। সমর্থিত অন্তর্নির্মিত অভিপ্রায়গুলির একটি তালিকার জন্য, অন্তর্নির্মিত অভিপ্রায় উল্লেখ দেখুন। -
app:queryPatterns
: এই উদ্দেশ্যের জন্য ব্যবহারকারীর কাছ থেকে প্রত্যাশিত প্রশ্নের একটি স্ট্রিং অ্যারে রিসোর্স। এই অ্যাট্রিবিউটটি শুধুমাত্র কাস্টম ইন্টেন্টের ক্ষেত্রে প্রযোজ্য, কারণ BII-তে ইতিমধ্যেই ব্যবহারকারীরা যে কাজগুলি করার চেষ্টা করছেন বা তারা যে তথ্য খুঁজছেন তা প্রকাশ করার সাধারণ উপায়গুলির মডেল অন্তর্ভুক্ত করে৷
<ইন্টেন্ট>
অ্যাপ-মধ্যস্থ কার্যকারিতা ব্যবহার করে ব্যবহারকারীর প্রশ্ন কীভাবে পূরণ করা উচিত তা নির্ধারণ করে Android intent
উপাদান। বিকাশকারীরা একটি capability
একাধিক <intent>
ট্যাগ প্রদান করতে পারে। অ্যাসিস্ট্যান্ট প্রথম <intent>
capability
করে একটি ব্যবহারকারীর কোয়েরি পূরণ করার চেষ্টা করে যার জন্য সমস্ত প্রয়োজনীয় প্যারামিটার দেওয়া আছে।
গুণাবলী:
-
android:action
: উদ্দেশ্যAction
টাইপ।ACTION_VIEW
এ ডিফল্ট। -
android:targetClass
: টার্গেট অ্যাক্টিভিটি ক্লাস, উদাহরণস্বরূপ:"com.example.exercise.ExerciseActivity"
-
android:targetPackage
: টার্গেট অ্যাক্টিভিটি ক্লাস ধারণকারী প্যাকেজ, উদাহরণস্বরূপ:"com.example.exercise
-
android:data
: এই ক্ষেত্রটি<url-template>
দ্বারা ওভাররাইট করা হয় যদি সেই ট্যাগটিintent
ঘোষণা করা হয়।
<url-টেমপ্লেট>
ডিভাইসে খোলার জন্য একটি গভীর লিঙ্ক URI নির্মাণের জন্য টেমপ্লেট। টেমপ্লেটের জন্য সমস্ত প্রয়োজনীয় পরামিতি উপলব্ধ থাকলে অন্তর্নির্মিত অভিপ্রায় পরামিতিগুলির সাথে টেমপ্লেটটি প্রসারিত করা যেতে পারে। HTTP URL টেমপ্লেটের উদাহরণের জন্য, URL টেমপ্লেটের উইকিপিডিয়া নিবন্ধটি দেখুন। টেমপ্লেট ফরম্যাট RFC6570 URI টেমপ্লেট স্পেসিফিকেশন অনুসরণ করে।
নীচে URL টেমপ্লেট মানগুলির কিছু উদাহরণ রয়েছে:
টেমপ্লেট | মূল্যবোধ | প্রসারিত মান |
---|---|---|
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
জন্য [ফোরগ্রাউন্ড অ্যাপ ইনভোকেশন][] সক্ষম করতে ব্যবহার করা হয়।
<প্যারামিটার>
উদ্দেশ্য প্যারামিটার মানগুলির সাথে একটি BII প্যারামিটার ম্যাপ করে৷ আরও তথ্যের জন্য, প্যারামিটার ডেটা এবং ম্যাচিং দেখুন।
গুণাবলী:
-
android:name
: এইintent
প্যারামিটারের সাথে যুক্ত করার জন্য BII প্যারামিটারের নাম। নামটি BII প্যারামিটারের একটি পাতা-স্তরের ক্ষেত্র হওয়া উচিত (উদাহরণস্বরূপ,foodObservation.aboutFood.name
)। -
android:key
: একটি BII প্যারামিটার মানের বিকাশকারী-সংজ্ঞায়িত কী। উদাহরণস্বরূপ, আপনিmessage.recipient.name
BII প্যারামিটারের জন্যcontact_name
সংজ্ঞায়িত করতে পারেন। -
android:mimeType
: প্যারামিটারের mimeType, যেমনtext/*
। এই ক্ষেত্রটি শুধুমাত্র কাস্টম ইন্টেন্টের প্যারামিটারের জন্য প্রয়োজন। -
android:required
: এই অভিপ্রায় পূরণের জন্য ব্যবহার করার জন্য ব্যবহারকারীর কোয়েরিতে এই প্যারামিটারটি অন্তর্ভুক্ত করতে হবে কিনা তা ঘোষণা করে। প্যারামিটার উপলব্ধ না হলে, সহকারীcapability
জন্য সংজ্ঞায়িত পরবর্তীintent
ব্যবহার করে ব্যবহারকারীর প্রশ্ন পূরণ করার চেষ্টা করে।
<শর্টকাট-পূরণ>
নির্দিষ্ট করে যে একটি নির্দিষ্ট প্যারামিটারের জন্য একটি ইনলাইন ইনভেন্টরি শর্টকাটে সংজ্ঞায়িত একটি intent
পূরণের জন্য ব্যবহার করা হবে। বিশদ বিবরণের জন্য, শর্টকাট উদ্দেশ্য ব্যবহার করে পূর্ণতা দেখুন।
<প্যারামিটার> ( <shortcut-fulfillment>
জন্য>)
ঐচ্ছিক বৈশিষ্ট্য যা ইনলাইন ইনভেন্টরি শর্টকাট পূরণের জন্য একটি একক BII প্যারামিটার ম্যাপ করে। বিশদ বিবরণের জন্য, শর্টকাট উদ্দেশ্য ব্যবহার করে পূর্ণতা দেখুন।
বৈশিষ্ট্য:
-
android:name
: ইনলাইন ইনভেন্টরি শর্টকাট পূরণের সাথে যুক্ত করার জন্য BII প্যারামিটারের নাম। নামটি BII প্যারামিটারের একটি পাতা-স্তরের ক্ষেত্র হওয়া উচিত (উদাহরণস্বরূপ,menuItem.name
)।
<স্লাইস>
একটি অ্যান্ড্রয়েড স্লাইস হিসাবে এই capability
সাথে মেলে এমন একটি প্রশ্নের ফলাফল এম্বেড করতে সহায়ককে সক্ষম করে৷ বিশদ বিবরণের জন্য, Android স্লাইসের সাথে অ্যাপ অ্যাকশন একীভূত করুন দেখুন।
শর্টকাট স্কিমা
নিম্নলিখিত সারণী shortcut
উপাদানগুলির বৈশিষ্ট্যগুলি বর্ণনা করে যা অ্যাপ অ্যাকশন কার্যকারিতা সক্ষম করতে ব্যবহৃত হয়৷ একটি ট্যাগ অন্তর্ভুক্ত করার সময়, "ঐচ্ছিক" হিসাবে চিহ্নিত না হলে এর সমস্ত বৈশিষ্ট্য প্রয়োজন।
Shortcuts.xml ট্যাগ | এর মধ্যে রয়েছে | গুণাবলী |
---|---|---|
<shortcut> | <shortcuts> | |
<intent> | <shortcut> | |
<capability-binding> |
| |
<parameter-binding> | <capability-binding> | |
<extra> | <shortcut> | শুধুমাত্র Enum প্যারামিটার মিলের জন্য প্রযোজ্য। |
শর্টকাট স্কিমার বিবরণ
এই বিভাগে shortcut
স্কিমা উপাদান বর্ণনা করা হয়.
<শর্টকাট>
একটি Android <shortcut>
সংজ্ঞায়িত কিছু নির্দিষ্ট বৈশিষ্ট্য সহ shortcuts.xml
এ যা অ্যাপ অ্যাকশনের জন্য প্রাসঙ্গিক। shortcutShortLabel
এবং shortcutLongLabel
ক্ষেত্রগুলির জন্য স্ট্রিং মানগুলি APK এর স্ট্রিং সংস্থানগুলির মাধ্যমে উল্লেখ করা হয়৷
গুণাবলী:
-
android:shortcutId
: এই শর্টকাটের জন্য শনাক্তকারী। -
android:shortcutShortLabel
: স্ট্রিং রিসোর্স একটি সংক্ষিপ্ত শর্টকাট বাক্যাংশ উপস্থাপন করে। উদাহরণস্বরূপ,"@string/callDavidShort"
মান প্রতিনিধিত্ব করে "ডেভিডকে কল করুন।" -
android:shortcutLongLabel
: স্ট্রিং রিসোর্স একটি দীর্ঘ শর্টকাট বাক্যাংশের প্রতিনিধিত্ব করে। উদাহরণস্বরূপ,"@string/callDavidLong"
মান প্রতিনিধিত্ব করে "ডেভিডকে একটি অডিও কল করুন।"
<ইন্টেন্ট>
এই শর্টকাটের সাথে যুক্ত Android অভিপ্রায়। এই intent
কার্যকর করা হয় যখন কোনও ব্যবহারকারী ভয়েস বা স্পর্শ ব্যবহার করে এই শর্টকাটটি চালু করেন।
shortcut
অভিপ্রায় বৈশিষ্ট্যগুলি capability
intent
বৈশিষ্ট্যগুলির সাথে অভিন্ন৷
<ক্যাপাবিলিটি-বাইন্ডিং>
একটি অ্যাপ অ্যাকশন capability
একটি shortcut
যুক্ত করে। একটি shortcut
এই উপাদানটি যোগ করা হলে এটি Assistant
ব্যবহার করে ভয়েস পূরণের জন্য সক্ষম করে।
গুণাবলী:
-
android:key
: এইshortcut
capability
android:name
বৈশিষ্ট্যটি আবদ্ধ। উদাহরণস্বরূপ,actions.intent.START_EXERCISE
।
<প্যারামিটার-বাইন্ডিং>
ঐচ্ছিক বৈশিষ্ট্য যা একটি অ্যাপ অ্যাকশন capability
একটি একক প্যারামিটারের সাথে একটি shortcut
যুক্ত করে। যদি একটি shortcut
জন্য একটি parameter-binding
সংজ্ঞায়িত করা হয়, তাহলে শর্টকাটটি একটি BII প্যারামিটারে একটি ইনলাইন ইনভেন্টরি সত্তা প্রদান করতে ব্যবহার করা যেতে পারে। আরও বিশদ বিবরণের জন্য, অ্যাপ অ্যাকশনের জন্য ইনলাইন ইনভেন্টরি দেখুন।
গুণাবলী:
-
android:key
: এই শর্টকাটটির সাথে যুক্ত করারcapability
BII প্যারামিটারের নাম। উদাহরণস্বরূপ,exercise.name
। -
android:value
:entity
মান। এটি একটি এককentity
বা একটি সম্পদ তালিকা হতে পারে।
<অতিরিক্ত>
শর্টকাটের জন্য extra
বান্ডেল ডেটা। sameAs হল অ্যাপ অ্যাকশন shortcut
উপাদানগুলির সাথে প্রাসঙ্গিক একমাত্র ডেটা৷ sameAs URL একটি রেফারেন্স ওয়েব পৃষ্ঠাকে বোঝায় যা দ্ব্যর্থহীনভাবে সত্তাকে শনাক্ত করে৷ যদি এবং শুধুমাত্র যদি উদ্দেশ্য প্যারামিটারের ধরনটি schema.org/Enumeration- এর একটি উপপ্রকার হয় তাহলে একটি enum মান নির্দিষ্ট করতে ব্যবহৃত হয়। এটি প্যারামিটার ক্ষেত্রগুলির জন্য প্রয়োজন যার প্রকারগুলি schema.org/Enumeration
এর উপপ্রকার (উদাহরণস্বরূপ: MealTypeBreakfast
)।
গুণাবলী:
-
android:key
: অ্যাপ অ্যাকশনের জন্য সমর্থিত মান হল:sameAs
-
android:value
:sameAs
URL মান
আরও বিশদ বিবরণের জন্য, গণনাকৃত পরামিতি মানগুলির মিল দেখুন।
অভিপ্রায় পূরণের বিকল্প
অ্যাসিস্ট্যান্ট কীভাবে সেই সামর্থ্যের সাথে মেলে এমন ব্যবহারকারীর ভয়েস কমান্ডের প্রতি কীভাবে সাড়া দেয় বা পূরণ করে তা ঘোষণা করার জন্য আপনি <capability>
এর মধ্যে intent
উপাদানগুলিকে সংজ্ঞায়িত করেন। আপনার অ্যাপ নেভিগেশন কীভাবে গঠন করা হয়েছে তার উপর নির্ভর করে আপনার অ্যাপে একটি intent
কীভাবে একটি পূরণের গন্তব্য চালু করে তা কনফিগার করার বিভিন্ন উপায় রয়েছে।
নিম্নলিখিত পূর্ণতা বিকল্প উপলব্ধ:
স্পষ্ট অভিপ্রায় :
intent
জন্যtargetClass
এবংtargetPackage
বৈশিষ্ট্যগুলি সংজ্ঞায়িত করে একটি নির্দিষ্ট অ্যাপ উপাদান চালু করুন। এটি প্রস্তাবিত অ্যাপ অ্যাকশন পূরণের পদ্ধতি।গভীর লিঙ্ক :
intent
উপাদানের মধ্যে একটি<url-template>
ট্যাগ সংজ্ঞায়িত করে Android ডিপ লিঙ্কগুলি ব্যবহার করে অ্যাপের গন্তব্যগুলি চালু করুন। যদি আপনার অ্যাপ্লিকেশন নেভিগেশন ইতিমধ্যে গভীর লিঙ্কগুলির উপর নির্ভর করে তবে এই পদ্ধতিটি কার্যকর।ইন্টেন্ট ডেটা : আপনি
intent
android:data
অ্যাট্রিবিউটে একটি পরিপূর্ণতা ইউআরআই সরবরাহ করতে পারেন। এই ক্ষেত্রটি<url-template>
ডেটা দ্বারা ওভাররাইট করা হয় যদি সেই ট্যাগটিওintent
মধ্যে সংজ্ঞায়িত করা হয়।
প্যারামিটার ডেটা এবং ম্যাচিং
ডিফল্টরূপে, সহকারী capability
হিসাবে সংজ্ঞায়িত অ্যান্ড্রয়েড intent
extra
ডেটা হিসাবে ব্যবহারকারী ক্যোয়ারী থেকে আপনার অ্যাপ্লিকেশনটিতে নিষ্কাশিত বিআইআই প্যারামিটারগুলি প্রেরণ করে।
পর্যায়ক্রমে, আপনি গতিশীল পরামিতিগুলির জন্য স্থানধারক রয়েছে এমন capability
একটি <url-template>
ট্যাগ ঘোষণা করতে পারেন। এই টেম্পলেটটি আপনার অ্যান্ড্রয়েড ক্রিয়াকলাপগুলির মধ্যে একটিতে মানচিত্র, একটি অ্যাপ্লিকেশন লিঙ্কগুলি ইউআরএল , একটি কাস্টম স্কিম বা একটি অভিপ্রায়-ভিত্তিক ইউআরএল ব্যবহার করে।
অভিপ্রায় অতিরিক্ত ব্যবহার করে
নিম্নলিখিত উদাহরণটি 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>
উপরের নমুনাটি দেওয়া, যেমন কোনও ব্যবহারকারীর প্রশ্নের জন্য, "আরে গুগল, উদাহরণ থেকে একটি ল্যাট অর্ডার করুন" অ্যাপ্লিকেশনটি এমন একটি intent
পেয়েছে যা উপাদানটিকে অনুরোধ করে: targetPackage
, targetClass
। উপাদানটি key = "exercise"
, value = "Running"
সহ একটি অতিরিক্ত গ্রহণ করে।
অ্যান্ড্রয়েড গভীর লিঙ্কগুলির জন্য একটি ইউআরএল টেম্পলেট ব্যবহার করে
যদি আপনার অ্যাপ্লিকেশনটি ইতিমধ্যে গতিশীল পরামিতিগুলির সাথে অ্যাপ-লিঙ্কযুক্ত ইউআরএলগুলি পরিচালনা করতে সক্ষম হয় তবে আপনি পরিপূরণ করার জন্য অ্যান্ড্রয়েড গভীর লিঙ্কগুলি তৈরি করার 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>
উপরের নমুনাটি দেওয়া, যেমন ব্যবহারকারীর প্রশ্নের জন্য, "আরে গুগল, উদাহরণ থেকে একটি ল্যাট অর্ডার করুন," অ্যাপটি উত্পন্ন ইউআরএল গ্রহণ করে: "মাই অ্যাপ: // শুরু? অনুশীলন = চলমান"।
আপনার ইউআরএল -তে কোনও অবস্থানে বিআইআই প্যারামিটারটি মানচিত্র করতে, আপনি অ্যান্ড্রয়েড ব্যবহার করুন: <parameter>
প্যারামিটার> ট্যাগের android:name
বৈশিষ্ট্য। এই বৈশিষ্ট্যটি android:key
মান যা আপনি ব্যবহারকারীর কাছ থেকে তথ্যের সাথে প্রতিস্থাপন করতে চান। android:key
মানটি অবশ্যই আপনার <url-template>
এ উপস্থিত থাকতে হবে এবং কোঁকড়ানো ধনুর্বন্ধনী ( {}
) দ্বারা আবদ্ধ।
গণনা করা প্যারামিটার মানগুলি মেলে
কিছু বিআইআই প্যারামিটারগুলি আপনার পরিপূর্ণতা অভিপ্রায়গুলিতে গণিত মান সরবরাহ করে, উদাহরণস্বরূপ, RECORD_FOOD_OBSERVATION
বিআইআইয়ের সমর্থিত পাঠ্য মানগুলি । এই পরামিতিগুলির জন্য, সহকারী ব্যবহারকারীর ক্যোয়ারী ("প্রাতঃরাশ") এর সাথে এমন একটি সত্তার সাথে মেলে যার sameAs
মান এনুম স্কিমা ইউআরএল ( https://schema.googleapis.com/MealTypeBreakfast
) সাথে মেলে। সমর্থিত entity
জন্য এনাম মানগুলি সংযুক্ত করার জন্য, আপনি আপনার shortcut
একটি sameAs
অ্যাসোসিয়েশন ঘোষণা করেন। নিম্নলিখিত নমুনাটি একটি ইনলাইন সত্তা শর্টকাটের জন্য একটি 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
: একটি কাস্টম অভিপ্রায় প্যারামিটার ধরণ। এই ক্ষেত্রটি বিআইআইএসের জন্য প্রয়োজনীয় নয়, যেখানে প্যারামিটারের ধরণটি জানা যায়। কাস্টম ইনটেন্ট প্যারামিটারগুলির জন্য, একটি সমর্থিত শব্দার্থক প্রকারটি অবশ্যই ঘোষণা করতে হবে।
আরও তথ্যের জন্য, কাস্টম অভিপ্রায় দেখুন।
, একবার আপনি প্রয়োগ করার জন্য আপনার অ্যাপ্লিকেশন কার্যকারিতা এবং সংশ্লিষ্ট বিল্ট-ইন ইন্টেন্ট (বিআইআই) সনাক্ত করার পরে, একটি shortcuts.xml
রিসোর্স ফাইলে একটি capability
উপাদান সংজ্ঞায়িত করে আপনার কার্যকারিতা সমর্থন করে BIIS ঘোষণা করুন। একটি বিআইআইকে একটি capability
হিসাবে ঘোষণা করা আপনার অ্যাপ্লিকেশনটিতে সেই শব্দার্থক অভিপ্রায়টির জন্য সমর্থন নিবন্ধন করে এবং গুগল সহকারী ব্যবহার করে অভিপ্রায়টির ভয়েস ক্যোয়ারির পরিপূর্ণতা সক্ষম করে।
সহকারী কোনও ব্যবহারকারীর ক্যোয়ারী থেকে পরামিতিগুলি বের করতে প্রাকৃতিক ভাষা প্রক্রিয়াকরণ ব্যবহার করে। অন্তর্নির্মিত ইন্টেন্টস রেফারেন্সটি প্রতিটি বিআইআই সম্পর্কিত ব্যবহারকারীর ক্যোয়ারী থেকে উত্তোলন করতে সক্ষম এমন ক্ষেত্রগুলি তালিকাভুক্ত করে। উদাহরণস্বরূপ, যদি কোনও ব্যবহারকারী যদি [ actions.intent.GET_FOOD_OBSERVATION
] [ :
-
foodObservation.forMeal
= "https://schema.googleapis.com/mealtypelunch" -
foodObservation.startTime
= "2024-09-06T00: 00: 00" -
foodObservation.endTime
= "2024-09-06T23: 59: 59"
সহকারী capability
সংজ্ঞায়িত পরিপূর্ণতা intent
বিআইআই প্যারামিটারগুলি পাস করে। এক বা একাধিক intent
উপাদানগুলি কোনও ব্যবহারকারী বিআইআইয়ের জন্য বিভিন্ন উপায়ে সামঞ্জস্য করার সক্ষমতা হিসাবে সংজ্ঞায়িত করা যেতে পারে। উদাহরণস্বরূপ, আপনি একটি পরিপূর্ণতা intent
সংজ্ঞায়িত করতে পারেন যা উপরের উদাহরণে উভয় বিআইআই পরামিতি প্রয়োজন। তারপরে আপনি একটি দ্বিতীয় অভিপ্রায় সংজ্ঞায়িত করতে পারেন যার জন্য একটি একক বিআই প্যারামিটার, foodObservation.forMeal
।
ওভারভিউ
আপনি আপনার অ্যাপ্লিকেশন প্রকল্পের res/xml
ডিরেক্টরিতে রাখা একটি shortcuts.xml
ফাইল ব্যবহার করে অ্যাপ্লিকেশন ক্রিয়াগুলি কনফিগার করেন এবং তারপরে আপনার অ্যাপ্লিকেশন ম্যানিফেস্টে shortcuts.xml
-এর একটি রেফারেন্স তৈরি করে। এই পদক্ষেপগুলি অনুসরণ করে আপনার অ্যাপ্লিকেশন প্রকাশে shortcuts.xml
-তে একটি রেফারেন্স যুক্ত করুন:
আপনার অ্যাপ্লিকেশনটির ম্যানিফেস্ট ফাইলে (
AndroidManifest.xml
), এমন একটি ক্রিয়াকলাপ সন্ধান করুন যার অভিপ্রায় ফিল্টারগুলিandroid.intent.action.MAIN
অ্যাকশন এবংandroid.intent.category.LAUNCHER
বিভাগে সেট করা আছে।AndroidManifest.xml
-এshortcuts.xml
-তে একটি রেফারেন্স যুক্ত করুন<meta-data>
> ট্যাগ ব্যবহার করেActivity
MAIN
এবংLAUNCHER
উভয়ের জন্য অভিপ্রায় ফিল্টার রয়েছে:<meta-data android:name="android.app.shortcuts" android:resource="@xml/shortcuts" />
উপরের উদাহরণটি এপিকে xml/shortcuts.xml
ফাইলের জন্য একটি এক্সএমএল সংস্থান ঘোষণা করে। শর্টকাটগুলি কনফিগার করার বিষয়ে আরও তথ্যের জন্য, অ্যান্ড্রয়েড বিকাশকারী ডকুমেন্টেশনে স্ট্যাটিক শর্টকাট তৈরি করুন দেখুন।
জেটপ্যাক লাইব্রেরি androidx.core:core:1.6.0
(বা তার বেশি) আপনার অ্যান্ড্রয়েড প্রকল্পে সংকলন ত্রুটিগুলি এড়াতে প্রয়োজনীয় যখন shortcuts.xml
অ্যাপ ক্রিয়াকলাপের ক্ষমতাগুলি সংজ্ঞায়িত করে। বিশদগুলির জন্য, অ্যান্ড্রয়েড জেটপ্যাক দিয়ে শুরু করা দেখুন।
স্ট্যাটিক শর্টকাটস
আপনার capability
সংজ্ঞায়িত করার সময়, আপনি সামর্থ্যের কার্যকারিতা বাড়ানোর জন্য shortcuts.xml
-এ স্ট্যাটিক shortcut
উপাদানগুলি ঘোষণা করতে পারেন। আপনি যখন গুগল প্লে কনসোলে একটি রিলিজ আপলোড করেন তখন স্ট্যাটিক শর্টকাটগুলি সহকারী দ্বারা খাওয়া হয়। যেহেতু স্ট্যাটিক শর্টকাটগুলি কেবল নতুন রিলিজ তৈরি করে তৈরি এবং আপডেট করা যায়, তাই আপনার অ্যাপ্লিকেশনটিতে সাধারণ ক্রিয়াকলাপ এবং সামগ্রী হাইলাইট করতে এগুলি সবচেয়ে কার্যকর।
আপনি স্ট্যাটিক শর্টকাটগুলির সাথে নিম্নলিখিত অ্যাপ্লিকেশন ক্রিয়া কার্যকারিতা সক্ষম করতে পারেন:
সক্ষমতা শর্টকাটস । শর্টকাটগুলি তৈরি করুন যা পূর্বনির্ধারিত
intent
প্যারামিটার মানগুলি সহ আপনারcapability
একটি উদাহরণ চালু করে। উদাহরণস্বরূপ, আপনি একটি অ্যাপ্লিকেশন শর্টকাট "স্টার্ট এ রান" ঘোষণা করতে পারেন যা আপনার ফিটনেস অ্যাপেSTART_EXERCISE
বিআইআই সক্ষমতা আহ্বান করে।এই শর্টকাটগুলিতে
intent
,shortLabel
এবংlongLabel
বৈশিষ্ট্য রয়েছে, যা তাদেরকে প্র্যাকটিভ পৃষ্ঠগুলিতে চিপস হিসাবে প্রস্তাবিত এবং পরিপূর্ণ করার যোগ্য করে তোলে যেমন সহকারী বা যখন অ্যান্ড্রয়েড লঞ্চারগুলিতে কোনও অ্যাপ আইকন দীর্ঘ-চাপ দেওয়া। একটি অ্যাকশন শর্টকাট একটি<capability-binding>
ট্যাগ ব্যবহার করেcapability
সাথে সংযুক্ত করে নীচে বিস্তারিত একটি সত্তা শর্টকাট হিসাবেও পরিবেশন করতে পারে।সত্তা শর্টকাটস । সত্তা শর্টকাটগুলি একটি
capability
ভয়েস ক্যোয়ারী পূরণের জন্য সমর্থিত প্যারামিটার মানগুলির একটি তালিকা সরবরাহ করে। উদাহরণস্বরূপ, অনুশীলনের ধরণের তালিকা ("হাইক," "রান," ইত্যাদি) এর একটি তালিকা সহ একটি সত্তা শর্টকাটexercise.name
সাথে আবদ্ধSTART_EXERCISE
যদি কোনও ব্যবহারকারীর উচ্চারণ কোনও সত্তার সাথে মেলে তবেshortcutId
আইডিটি কাঁচা ব্যবহারকারী ক্যোয়ারী মানের পরিবর্তে অভিপ্রায়টিতে প্রেরণ করা হয়।Entity
শর্টকাটগুলিintent
,shortLabel
বাlongLabel
বৈশিষ্ট্যগুলি সংজ্ঞায়িত করে না এবং এগুলি প্র্যাকটিভ পৃষ্ঠগুলিতে প্রস্তাবিত নয়। বিশদের জন্য, অ্যাপ্লিকেশন ক্রিয়াকলাপের জন্য ইনলাইন ইনভেন্টরি দেখুন।
সক্ষমতা স্কিমা
নিম্নলিখিত টেবিলটি shortcuts.xml
-এ capability
উপাদানগুলির জন্য অ্যাপ অ্যাকশন স্কিমা বর্ণনা করে। একটি ট্যাগ অন্তর্ভুক্ত করার সময়, "al চ্ছিক" চিহ্নিত না করা হলে এর সমস্ত বৈশিষ্ট্য প্রয়োজন।
শর্টকাটস.এক্সএমএল ট্যাগ | এর মধ্যে রয়েছে | গুণাবলী |
---|---|---|
<capability> | <shortcuts> | |
<intent> | <capability> | |
<url-template> | <intent> | |
<extra> | <intent> | কেবল অগ্রভাগ অ্যাপ্লিকেশন অনুরোধের জন্য প্রযোজ্য |
<parameter> | <intent> | |
<shortcut-fulfillment> | <capability> | কেবল ইনলাইন ইনভেন্টরির জন্য প্রযোজ্য |
<parameter> | <shortcut-fulfillment> | android:name |
<slice> | <capability> | শুধুমাত্র অ্যান্ড্রয়েড স্লাইসের জন্য প্রযোজ্য |
সক্ষমতা স্কিমা বিবরণ
এই বিভাগটি capability
স্কিমা উপাদানগুলি বর্ণনা করে।
<সক্ষমতা>
আপনার অ্যাপ্লিকেশনটিকে সমর্থন করে এমন একটি capability
যা অ্যাপ অ্যাকশন ইনটেন্টকে সংজ্ঞায়িত করে। আপনার shortcuts.xml
ফাইলের প্রতিটি <capability>
উপাদানটি অবশ্যই ক্রিয়াটির পরিপূর্ণতা পরিচালনা করতে কমপক্ষে একটি <intent>
সরবরাহ করতে হবে।
গুণাবলী:
-
android:name
: অন্তর্নির্মিত ইনটেন্ট অ্যাকশন আইডি (উদাহরণস্বরূপ, [actions.intent.GET_FOOD_OBSERVATION
] [])। সমর্থিত অন্তর্নির্মিত উদ্দেশ্যগুলির তালিকার জন্য, অন্তর্নির্মিত অভিপ্রায় রেফারেন্সটি দেখুন। -
app:queryPatterns
: এই অভিপ্রায়টির জন্য ব্যবহারকারীর কাছ থেকে প্রত্যাশিত প্রশ্নের একটি স্ট্রিং অ্যারে রিসোর্স। এই বৈশিষ্ট্যটি কেবল কাস্টম অভিপ্রায়গুলির জন্যই প্রযোজ্য, কারণ বিআইআইএস ইতিমধ্যে ব্যবহারকারীরা যে কাজগুলি করার চেষ্টা করছে সেগুলি বা তারা যে তথ্যগুলি অনুসন্ধান করে তা প্রকাশ করে এমন সাধারণ উপায়গুলির মডেলগুলি অন্তর্ভুক্ত করে।
<ইনটেন্ট>
অ্যাপ্লিকেশন কার্যকারিতা ব্যবহার করে কীভাবে কোনও ব্যবহারকারীর ক্যোয়ারী পূরণ করা উচিত তা নির্ধারণ করে অ্যান্ড্রয়েড intent
উপাদান। বিকাশকারীরা একটি capability
একাধিক <intent>
ট্যাগ সরবরাহ করতে পারে। সহকারী প্রথম <intent>
একটি capability
ব্যবহার করে ব্যবহারকারীর ক্যোয়ারী পূরণ করার চেষ্টা করে যার জন্য সমস্ত প্রয়োজনীয় পরামিতি সরবরাহ করা হয়।
গুণাবলী:
-
android:action
: অভিপ্রায়Action
টাইপ।ACTION_VIEW
ডিফল্ট। -
android:targetClass
: টার্গেট ক্রিয়াকলাপ শ্রেণি, উদাহরণস্বরূপ:"com.example.exercise.ExerciseActivity"
-
android:targetPackage
: লক্ষ্য ক্রিয়াকলাপ শ্রেণিযুক্ত প্যাকেজ, উদাহরণস্বরূপ:"com.example.exercise
-
android:data
: এই ক্ষেত্রটি<url-template>
দ্বারা ওভাররাইট করা হয়েছে যদি সেই ট্যাগটিintent
ঘোষণা করা হয়।
<url-template>
ডিভাইসে খোলার জন্য একটি গভীর লিঙ্ক ইউআরআই নির্মাণের জন্য টেমপ্লেট। টেমপ্লেটের জন্য প্রয়োজনীয় সমস্ত পরামিতি পাওয়া গেলে টেমপ্লেটটি অন্তর্নির্মিত ইন্টেন্ট প্যারামিটারগুলির সাথে প্রসারিত হতে পারে। এইচটিটিপি ইউআরএল টেমপ্লেটের উদাহরণগুলির জন্য, ইউআরএল টেমপ্লেটগুলিতে উইকিপিডিয়া নিবন্ধটি দেখুন। টেমপ্লেট ফর্ম্যাটটি আরএফসি 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 |
ইউআরএল টেম্পলেটগুলি কনফিগার করার বিষয়ে আরও তথ্যের জন্য, পরিপূর্ণতায় ইউআরএল টেম্পলেটগুলি দেখুন।
<অতিরিক্ত>
একটি intent
জন্য অতিরিক্ত ডেটা সংজ্ঞায়িত করে। অ্যাপ্লিকেশন ক্রিয়াকলাপের জন্য, এই ক্ষেত্রটি কেবল capability
জন্য [অগ্রভাগের অ্যাপের অনুরোধ] [] সক্ষম করতে ব্যবহৃত হয়।
<প্যারামিটার>
অভিপ্রায় প্যারামিটার মানগুলিতে একটি বিআইআই প্যারামিটার মানচিত্র। আরও তথ্যের জন্য, প্যারামিটার ডেটা এবং ম্যাচিং দেখুন।
গুণাবলী:
-
android:name
: এইintent
প্যারামিটারের সাথে যুক্ত করতে বিআইআই প্যারামিটারের নাম। নামটি বিআইআই প্যারামিটারের একটি পাতা-স্তরের ক্ষেত্র হওয়া উচিত (উদাহরণস্বরূপ,foodObservation.aboutFood.name
)। -
android:key
: একটি বিআইআই প্যারামিটার মানের বিকাশকারী-সংজ্ঞায়িত কী। উদাহরণস্বরূপ, আপনিmessage.recipient.name
জন্যcontact_name
সংজ্ঞায়িত করতে পারেন rec -
android:mimeType
: প্যারামিটারের মিমেটাইপ যেমনtext/*
। এই ক্ষেত্রটি কেবল কাস্টম উদ্দেশ্যগুলির পরামিতিগুলির জন্য প্রয়োজনীয়। -
android:required
: ব্যবহারকারীর ক্যোয়ারিকে এই অভিপ্রায়টি পরিপূর্ণতার জন্য ব্যবহার করার জন্য এই প্যারামিটারটি অন্তর্ভুক্ত করা দরকার কিনা তা ঘোষণা করে। যদি প্যারামিটারটি উপলভ্য না থাকে তবে সহকারীcapability
জন্য সংজ্ঞায়িত পরবর্তীintent
ব্যবহার করে ব্যবহারকারীর ক্যোয়ারীটি পূরণ করার চেষ্টা করে।
<শর্টকাট-ফুলফিলমেন্ট>
নির্দিষ্ট করে যে নির্দিষ্ট প্যারামিটারের জন্য একটি ইনলাইন ইনভেন্টরি শর্টকাটে সংজ্ঞায়িত একটি intent
পরিপূর্ণতার জন্য ব্যবহার করা উচিত। বিশদের জন্য, শর্টকাট অভিপ্রায় ব্যবহার করে পরিপূর্ণতা দেখুন।
<প্যারামিটার> ( <shortcut-fulfillment>
> এর জন্য)
Oth চ্ছিক বৈশিষ্ট্য যা ইনলাইন ইনলাইন ইনভেন্টরি শর্টকাট পরিপূরণ করতে একক বিআইআই প্যারামিটারকে মানচিত্র করে। বিশদের জন্য, শর্টকাট অভিপ্রায় ব্যবহার করে পরিপূর্ণতা দেখুন।
বৈশিষ্ট্য:
-
android:name
: ইনলাইন ইনভেন্টরি শর্টকাট পরিপূর্ণতার সাথে সংযুক্ত করতে বিআইআই প্যারামিটারের নাম। নামটি বিআইআই প্যারামিটারের একটি পাতা-স্তরের ক্ষেত্র হওয়া উচিত (উদাহরণস্বরূপ,menuItem.name
)।
<স্লাইস>
অ্যান্ড্রয়েড স্লাইস হিসাবে এই capability
সাথে মেলে একটি কোয়েরির ফলাফল এম্বেড করতে সহকারীকে সক্ষম করে। বিশদের জন্য, অ্যান্ড্রয়েড স্লাইসগুলির সাথে সংহত অ্যাপ্লিকেশন ক্রিয়াগুলি দেখুন।
শর্টকাট স্কিমা
নিম্নলিখিত টেবিলটি shortcut
উপাদানগুলির বৈশিষ্ট্যগুলি বর্ণনা করে যা অ্যাপ্লিকেশন ক্রিয়া কার্যকারিতা সক্ষম করতে ব্যবহৃত হয়। একটি ট্যাগ অন্তর্ভুক্ত করার সময়, "al চ্ছিক" চিহ্নিত না করা হলে এর সমস্ত বৈশিষ্ট্য প্রয়োজন।
শর্টকাটস.এক্সএমএল ট্যাগ | এর মধ্যে রয়েছে | গুণাবলী |
---|---|---|
<shortcut> | <shortcuts> | |
<intent> | <shortcut> | |
<capability-binding> |
| |
<parameter-binding> | <capability-binding> | |
<extra> | <shortcut> | শুধুমাত্র এনাম প্যারামিটার ম্যাচের জন্য প্রযোজ্য। |
শর্টকাট স্কিমা বর্ণনা
এই বিভাগটি shortcut
স্কিমা উপাদানগুলি বর্ণনা করে।
<শর্টকাট>
একটি অ্যান্ড্রয়েড <shortcut>
shortcuts.xml
-এ সংজ্ঞায়িত নির্দিষ্ট বৈশিষ্ট্যগুলির সাথে সংজ্ঞায়িত করা হয়েছে যা অ্যাপ্লিকেশন ক্রিয়াকলাপের জন্য প্রাসঙ্গিক। shortcutShortLabel
এবং shortcutLongLabel
ক্ষেত্রগুলির জন্য স্ট্রিং মানগুলি এপিকে স্ট্রিং রিসোর্সের মাধ্যমে উল্লেখ করা হয়।
গুণাবলী:
-
android:shortcutId
: এই শর্টকাটের জন্য সনাক্তকারী। -
android:shortcutShortLabel
: একটি সংক্ষিপ্ত শর্টকাট বাক্যাংশ উপস্থাপন করে স্ট্রিং রিসোর্স। উদাহরণস্বরূপ,"@string/callDavidShort"
মানটি উপস্থাপন করে "কল ডেভিড"। -
android:shortcutLongLabel
: স্ট্রিং রিসোর্স একটি দীর্ঘ শর্টকাট বাক্যাংশ উপস্থাপন করে। উদাহরণস্বরূপ,"@string/callDavidLong"
মানটি উপস্থাপন করে "ডেভিডকে একটি অডিও কল করুন।"
<ইনটেন্ট>
এই শর্টকাটের সাথে সম্পর্কিত অ্যান্ড্রয়েড অভিপ্রায়। যখন কোনও ব্যবহারকারী ভয়েস বা স্পর্শ ব্যবহার করে এই শর্টকাটটি চালু করে তখন এই intent
কার্যকর করা হয়।
shortcut
ইনটেন্ট বৈশিষ্ট্যগুলি capability
intent
বৈশিষ্ট্যগুলির সাথে অভিন্ন।
<সক্ষমতা-বাইন্ডিং>
একটি অ্যাপ্লিকেশন ক্রিয়া capability
সাথে একটি shortcut
যুক্ত করে। একটি shortcut
এই উপাদান যুক্ত করা Assistant
ব্যবহার করে ভয়েস পরিপূর্ণতার জন্য এটি সক্ষম করে।
গুণাবলী:
-
android:key
: অ্যান্ড্রয়েড: এইshortcut
capability
android:name
বৈশিষ্ট্যটি আবদ্ধ। উদাহরণস্বরূপ,actions.intent.START_EXERCISE
এক্সারসাইজ।
<প্যারামিটার-বাইন্ডিং>
Application চ্ছিক বৈশিষ্ট্য যা একটি অ্যাপ্লিকেশন ক্রিয়াকলাপের capability
একক প্যারামিটারের সাথে একটি shortcut
যুক্ত করে। যদি কোনও parameter-binding
shortcut
জন্য সংজ্ঞায়িত করা হয় তবে শর্টকাটটি বিআইআই প্যারামিটারে একটি ইনলাইন ইনভেন্টরি সত্তা সরবরাহ করতে ব্যবহার করা যেতে পারে। আরও তথ্যের জন্য, অ্যাপ্লিকেশন ক্রিয়াগুলির জন্য ইনলাইন ইনভেন্টরি দেখুন।
গুণাবলী:
-
android:key
: এই শর্টকাটটিতে যুক্ত করতেcapability
বিআইআই প্যারামিটারের নাম। উদাহরণস্বরূপ,exercise.name
। -
android:value
:entity
মান। এটি একটি এককentity
বা একটি সংস্থান তালিকা হতে পারে।
<অতিরিক্ত>
শর্টকাটের জন্য extra
বান্ডিল ডেটা। স্যামিয়াস হ'ল অ্যাপ অ্যাকশন shortcut
উপাদানগুলির সাথে প্রাসঙ্গিক একমাত্র ডেটা। সামিয়াস ইউআরএল একটি রেফারেন্স ওয়েব পৃষ্ঠাকে বোঝায় যা সত্তাকে নির্বিঘ্নে চিহ্নিত করে। কোনও এনাম মান নির্দিষ্ট করতে ব্যবহৃত হয় যদি এবং কেবলমাত্র যদি অভিপ্রায় প্যারামিটার প্রকারটি স্কিমা.অর্গ/এনামারেশনের একটি সাব টাইপ হয়। এটি প্যারামিটার ক্ষেত্রগুলির জন্য প্রয়োজনীয় যাদের প্রকারগুলি schema.org/Enumeration
সাব টাইপ (উদাহরণস্বরূপ: MealTypeBreakfast
)।
গুণাবলী:
-
android:key
: অ্যাপের ক্রিয়াকলাপগুলির জন্য সমর্থিত মান:sameAs
-
android:value
:sameAs
ইউআরএল মান
আরও তথ্যের জন্য, গণনা করা প্যারামিটার মানগুলি দেখুন।
অভিপ্রায় পরিপূর্ণতা বিকল্প
সহকারী কীভাবে সাড়া দেয় বা পূরণ করে, সেই সক্ষমতার সাথে মেলে এমন ব্যবহারকারী ভয়েস কমান্ডগুলিতে আপনি একটি <capability>
এর মধ্যে intent
উপাদানগুলি সংজ্ঞায়িত করেন। আপনার অ্যাপ্লিকেশন নেভিগেশন কীভাবে কাঠামোগত হয় তার উপর নির্ভর করে কীভাবে কোনও intent
আপনার অ্যাপ্লিকেশনটিতে একটি পরিপূর্ণতা গন্তব্য চালু করে তা কনফিগার করার বিভিন্ন উপায় রয়েছে।
নিম্নলিখিত পরিপূর্ণতা বিকল্পগুলি উপলব্ধ:
সুস্পষ্ট অভিপ্রায় :
intent
জন্যtargetClass
এবংtargetPackage
বৈশিষ্ট্যগুলি সংজ্ঞায়িত করে একটি নির্দিষ্ট অ্যাপ্লিকেশন উপাদান চালু করুন। এটি প্রস্তাবিত অ্যাপ্লিকেশন ক্রিয়া পরিপূর্ণ পদ্ধতি।গভীর লিঙ্কগুলি :
intent
উপাদানটির মধ্যে একটি<url-template>
ট্যাগ সংজ্ঞায়িত করে অ্যান্ড্রয়েড গভীর লিঙ্কগুলি ব্যবহার করে অ্যাপ গন্তব্যগুলি চালু করুন। যদি আপনার অ্যাপ্লিকেশন নেভিগেশন ইতিমধ্যে গভীর লিঙ্কগুলির উপর নির্ভর করে তবে এই পদ্ধতিটি কার্যকর।ইন্টেন্ট ডেটা : আপনি
intent
android:data
অ্যাট্রিবিউটে একটি পরিপূর্ণতা ইউআরআই সরবরাহ করতে পারেন। এই ক্ষেত্রটি<url-template>
ডেটা দ্বারা ওভাররাইট করা হয় যদি সেই ট্যাগটিওintent
মধ্যে সংজ্ঞায়িত করা হয়।
প্যারামিটার ডেটা এবং ম্যাচিং
ডিফল্টরূপে, সহকারী capability
হিসাবে সংজ্ঞায়িত অ্যান্ড্রয়েড intent
extra
ডেটা হিসাবে ব্যবহারকারী ক্যোয়ারী থেকে আপনার অ্যাপ্লিকেশনটিতে নিষ্কাশিত বিআইআই প্যারামিটারগুলি প্রেরণ করে।
পর্যায়ক্রমে, আপনি গতিশীল পরামিতিগুলির জন্য স্থানধারক রয়েছে এমন capability
একটি <url-template>
ট্যাগ ঘোষণা করতে পারেন। এই টেম্পলেটটি আপনার অ্যান্ড্রয়েড ক্রিয়াকলাপগুলির মধ্যে একটিতে মানচিত্র, একটি অ্যাপ্লিকেশন লিঙ্কগুলি ইউআরএল , একটি কাস্টম স্কিম বা একটি অভিপ্রায়-ভিত্তিক ইউআরএল ব্যবহার করে।
অভিপ্রায় অতিরিক্ত ব্যবহার করে
নিম্নলিখিত উদাহরণটি 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>
উপরের নমুনাটি দেওয়া, যেমন কোনও ব্যবহারকারীর প্রশ্নের জন্য, "আরে গুগল, উদাহরণ থেকে একটি ল্যাট অর্ডার করুন" অ্যাপ্লিকেশনটি এমন একটি intent
পেয়েছে যা উপাদানটিকে অনুরোধ করে: targetPackage
, targetClass
। উপাদানটি key = "exercise"
, value = "Running"
সহ একটি অতিরিক্ত গ্রহণ করে।
অ্যান্ড্রয়েড গভীর লিঙ্কগুলির জন্য একটি ইউআরএল টেম্পলেট ব্যবহার করে
যদি আপনার অ্যাপ্লিকেশনটি ইতিমধ্যে গতিশীল পরামিতিগুলির সাথে অ্যাপ-লিঙ্কযুক্ত ইউআরএলগুলি পরিচালনা করতে সক্ষম হয় তবে আপনি পরিপূরণ করার জন্য অ্যান্ড্রয়েড গভীর লিঙ্কগুলি তৈরি করার 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>
উপরের নমুনাটি দেওয়া, যেমন ব্যবহারকারীর প্রশ্নের জন্য, "আরে গুগল, উদাহরণ থেকে একটি ল্যাট অর্ডার করুন," অ্যাপটি উত্পন্ন ইউআরএল গ্রহণ করে: "মাই অ্যাপ: // শুরু? অনুশীলন = চলমান"।
আপনার ইউআরএল -তে কোনও অবস্থানে বিআইআই প্যারামিটারটি মানচিত্র করতে, আপনি অ্যান্ড্রয়েড ব্যবহার করুন: <parameter>
প্যারামিটার> ট্যাগের android:name
বৈশিষ্ট্য। এই বৈশিষ্ট্যটি android:key
মান যা আপনি ব্যবহারকারীর কাছ থেকে তথ্যের সাথে প্রতিস্থাপন করতে চান। android:key
মানটি অবশ্যই আপনার <url-template>
এ উপস্থিত থাকতে হবে এবং কোঁকড়ানো ধনুর্বন্ধনী ( {}
) দ্বারা আবদ্ধ।
গণনা করা প্যারামিটার মানগুলি মেলে
কিছু বিআইআই প্যারামিটারগুলি আপনার পরিপূর্ণতা অভিপ্রায়গুলিতে গণিত মান সরবরাহ করে, উদাহরণস্বরূপ, RECORD_FOOD_OBSERVATION
বিআইআইয়ের সমর্থিত পাঠ্য মানগুলি । এই পরামিতিগুলির জন্য, সহকারী ব্যবহারকারীর ক্যোয়ারী ("প্রাতঃরাশ") এর সাথে এমন একটি সত্তার সাথে মেলে যার sameAs
মান এনুম স্কিমা ইউআরএল ( https://schema.googleapis.com/MealTypeBreakfast
) সাথে মেলে। সমর্থিত entity
জন্য এনাম মানগুলি সংযুক্ত করার জন্য, আপনি আপনার shortcut
একটি sameAs
অ্যাসোসিয়েশন ঘোষণা করেন। নিম্নলিখিত নমুনাটি একটি ইনলাইন সত্তা শর্টকাটের জন্য একটি 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
: একটি কাস্টম অভিপ্রায় প্যারামিটার ধরণ। এই ক্ষেত্রটি বিআইআইএসের জন্য প্রয়োজনীয় নয়, যেখানে প্যারামিটারের ধরণটি জানা যায়। কাস্টম ইনটেন্ট প্যারামিটারগুলির জন্য, একটি সমর্থিত শব্দার্থক প্রকারটি অবশ্যই ঘোষণা করতে হবে।
আরও তথ্যের জন্য, কাস্টম অভিপ্রায় দেখুন।
, একবার আপনি প্রয়োগ করার জন্য আপনার অ্যাপ্লিকেশন কার্যকারিতা এবং সংশ্লিষ্ট বিল্ট-ইন ইন্টেন্ট (বিআইআই) সনাক্ত করার পরে, একটি shortcuts.xml
রিসোর্স ফাইলে একটি capability
উপাদান সংজ্ঞায়িত করে আপনার কার্যকারিতা সমর্থন করে BIIS ঘোষণা করুন। একটি বিআইআইকে একটি capability
হিসাবে ঘোষণা করা আপনার অ্যাপ্লিকেশনটিতে সেই শব্দার্থক অভিপ্রায়টির জন্য সমর্থন নিবন্ধন করে এবং গুগল সহকারী ব্যবহার করে অভিপ্রায়টির ভয়েস ক্যোয়ারির পরিপূর্ণতা সক্ষম করে।
সহকারী কোনও ব্যবহারকারীর ক্যোয়ারী থেকে পরামিতিগুলি বের করতে প্রাকৃতিক ভাষা প্রক্রিয়াকরণ ব্যবহার করে। অন্তর্নির্মিত ইন্টেন্টস রেফারেন্সটি প্রতিটি বিআইআই সম্পর্কিত ব্যবহারকারীর ক্যোয়ারী থেকে উত্তোলন করতে সক্ষম এমন ক্ষেত্রগুলি তালিকাভুক্ত করে। উদাহরণস্বরূপ, যদি কোনও ব্যবহারকারী যদি [ actions.intent.GET_FOOD_OBSERVATION
] [ :
-
foodObservation.forMeal
= "https://schema.googleapis.com/mealtypelunch" -
foodObservation.startTime
= "2024-09-06T00: 00: 00" -
foodObservation.endTime
= "2024-09-06T23: 59: 59"
সহকারী capability
সংজ্ঞায়িত পরিপূর্ণতা intent
বিআইআই প্যারামিটারগুলি পাস করে। এক বা একাধিক intent
উপাদানগুলি কোনও ব্যবহারকারী বিআইআইয়ের জন্য বিভিন্ন উপায়ে সামঞ্জস্য করার সক্ষমতা হিসাবে সংজ্ঞায়িত করা যেতে পারে। উদাহরণস্বরূপ, আপনি একটি পরিপূর্ণতা intent
সংজ্ঞায়িত করতে পারেন যা উপরের উদাহরণে উভয় বিআইআই পরামিতি প্রয়োজন। তারপরে আপনি একটি দ্বিতীয় অভিপ্রায় সংজ্ঞায়িত করতে পারেন যার জন্য একটি একক বিআই প্যারামিটার, foodObservation.forMeal
।
ওভারভিউ
আপনি আপনার অ্যাপ্লিকেশন প্রকল্পের res/xml
ডিরেক্টরিতে রাখা একটি shortcuts.xml
ফাইল ব্যবহার করে অ্যাপ্লিকেশন ক্রিয়াগুলি কনফিগার করেন এবং তারপরে আপনার অ্যাপ্লিকেশন ম্যানিফেস্টে shortcuts.xml
-এর একটি রেফারেন্স তৈরি করে। এই পদক্ষেপগুলি অনুসরণ করে আপনার অ্যাপ্লিকেশন প্রকাশে shortcuts.xml
-তে একটি রেফারেন্স যুক্ত করুন:
আপনার অ্যাপ্লিকেশনটির ম্যানিফেস্ট ফাইলে (
AndroidManifest.xml
), এমন একটি ক্রিয়াকলাপ সন্ধান করুন যার অভিপ্রায় ফিল্টারগুলিandroid.intent.action.MAIN
অ্যাকশন এবংandroid.intent.category.LAUNCHER
বিভাগে সেট করা আছে।AndroidManifest.xml
-এshortcuts.xml
-তে একটি রেফারেন্স যুক্ত করুন<meta-data>
> ট্যাগ ব্যবহার করেActivity
MAIN
এবংLAUNCHER
উভয়ের জন্য অভিপ্রায় ফিল্টার রয়েছে:<meta-data android:name="android.app.shortcuts" android:resource="@xml/shortcuts" />
উপরের উদাহরণটি এপিকে xml/shortcuts.xml
ফাইলের জন্য একটি এক্সএমএল সংস্থান ঘোষণা করে। শর্টকাটগুলি কনফিগার করার বিষয়ে আরও তথ্যের জন্য, অ্যান্ড্রয়েড বিকাশকারী ডকুমেন্টেশনে স্ট্যাটিক শর্টকাট তৈরি করুন দেখুন।
জেটপ্যাক লাইব্রেরি androidx.core:core:1.6.0
(বা তার বেশি) আপনার অ্যান্ড্রয়েড প্রকল্পে সংকলন ত্রুটিগুলি এড়াতে প্রয়োজনীয় যখন shortcuts.xml
অ্যাপ ক্রিয়াকলাপের ক্ষমতাগুলি সংজ্ঞায়িত করে। বিশদগুলির জন্য, অ্যান্ড্রয়েড জেটপ্যাক দিয়ে শুরু করা দেখুন।
স্ট্যাটিক শর্টকাটস
আপনার capability
সংজ্ঞায়িত করার সময়, আপনি সামর্থ্যের কার্যকারিতা বাড়ানোর জন্য shortcuts.xml
-এ স্ট্যাটিক shortcut
উপাদানগুলি ঘোষণা করতে পারেন। আপনি যখন গুগল প্লে কনসোলে একটি রিলিজ আপলোড করেন তখন স্ট্যাটিক শর্টকাটগুলি সহকারী দ্বারা খাওয়া হয়। যেহেতু স্ট্যাটিক শর্টকাটগুলি কেবল নতুন রিলিজ তৈরি করে তৈরি এবং আপডেট করা যায়, তাই আপনার অ্যাপ্লিকেশনটিতে সাধারণ ক্রিয়াকলাপ এবং সামগ্রী হাইলাইট করতে এগুলি সবচেয়ে কার্যকর।
আপনি স্ট্যাটিক শর্টকাটগুলির সাথে নিম্নলিখিত অ্যাপ্লিকেশন ক্রিয়া কার্যকারিতা সক্ষম করতে পারেন:
সক্ষমতা শর্টকাটস । শর্টকাটগুলি তৈরি করুন যা পূর্বনির্ধারিত
intent
প্যারামিটার মানগুলি সহ আপনারcapability
একটি উদাহরণ চালু করে। উদাহরণস্বরূপ, আপনি একটি অ্যাপ্লিকেশন শর্টকাট "স্টার্ট এ রান" ঘোষণা করতে পারেন যা আপনার ফিটনেস অ্যাপেSTART_EXERCISE
বিআইআই সক্ষমতা আহ্বান করে।এই শর্টকাটগুলিতে
intent
,shortLabel
এবংlongLabel
বৈশিষ্ট্য রয়েছে, যা তাদেরকে প্র্যাকটিভ পৃষ্ঠগুলিতে চিপস হিসাবে প্রস্তাবিত এবং পরিপূর্ণ করার যোগ্য করে তোলে যেমন সহকারী বা যখন অ্যান্ড্রয়েড লঞ্চারগুলিতে কোনও অ্যাপ আইকন দীর্ঘ-চাপ দেওয়া। একটি অ্যাকশন শর্টকাট একটি<capability-binding>
ট্যাগ ব্যবহার করেcapability
সাথে সংযুক্ত করে নীচে বিস্তারিত একটি সত্তা শর্টকাট হিসাবেও পরিবেশন করতে পারে।সত্তা শর্টকাটস । সত্তা শর্টকাটগুলি একটি
capability
ভয়েস ক্যোয়ারী পূরণের জন্য সমর্থিত প্যারামিটার মানগুলির একটি তালিকা সরবরাহ করে। উদাহরণস্বরূপ, অনুশীলনের ধরণের তালিকা ("হাইক," "রান," ইত্যাদি) এর একটি তালিকা সহ একটি সত্তা শর্টকাটexercise.name
সাথে আবদ্ধSTART_EXERCISE
যদি কোনও ব্যবহারকারীর উচ্চারণ কোনও সত্তার সাথে মেলে তবেshortcutId
আইডিটি কাঁচা ব্যবহারকারী ক্যোয়ারী মানের পরিবর্তে অভিপ্রায়টিতে প্রেরণ করা হয়।Entity
শর্টকাটগুলিintent
,shortLabel
বাlongLabel
বৈশিষ্ট্যগুলি সংজ্ঞায়িত করে না এবং এগুলি প্র্যাকটিভ পৃষ্ঠগুলিতে প্রস্তাবিত নয়। বিশদের জন্য, অ্যাপ্লিকেশন ক্রিয়াকলাপের জন্য ইনলাইন ইনভেন্টরি দেখুন।
সক্ষমতা স্কিমা
নিম্নলিখিত টেবিলটি shortcuts.xml
-এ capability
উপাদানগুলির জন্য অ্যাপ অ্যাকশন স্কিমা বর্ণনা করে। একটি ট্যাগ অন্তর্ভুক্ত করার সময়, "al চ্ছিক" চিহ্নিত না করা হলে এর সমস্ত বৈশিষ্ট্য প্রয়োজন।
শর্টকাটস.এক্সএমএল ট্যাগ | এর মধ্যে রয়েছে | গুণাবলী |
---|---|---|
<capability> | <shortcuts> | |
<intent> | <capability> | |
<url-template> | <intent> | |
<extra> | <intent> | কেবল অগ্রভাগ অ্যাপ্লিকেশন অনুরোধের জন্য প্রযোজ্য |
<parameter> | <intent> | |
<shortcut-fulfillment> | <capability> | কেবল ইনলাইন ইনভেন্টরির জন্য প্রযোজ্য |
<parameter> | <shortcut-fulfillment> | android:name |
<slice> | <capability> | শুধুমাত্র অ্যান্ড্রয়েড স্লাইসের জন্য প্রযোজ্য |
সক্ষমতা স্কিমা বিবরণ
এই বিভাগটি capability
স্কিমা উপাদানগুলি বর্ণনা করে।
<সক্ষমতা>
আপনার অ্যাপ্লিকেশনটিকে সমর্থন করে এমন একটি capability
যা অ্যাপ অ্যাকশন ইনটেন্টকে সংজ্ঞায়িত করে। আপনার shortcuts.xml
ফাইলের প্রতিটি <capability>
উপাদানটি অবশ্যই ক্রিয়াটির পরিপূর্ণতা পরিচালনা করতে কমপক্ষে একটি <intent>
সরবরাহ করতে হবে।
গুণাবলী:
-
android:name
: অন্তর্নির্মিত ইনটেন্ট অ্যাকশন আইডি (উদাহরণস্বরূপ, [actions.intent.GET_FOOD_OBSERVATION
] [])। সমর্থিত অন্তর্নির্মিত উদ্দেশ্যগুলির তালিকার জন্য, অন্তর্নির্মিত অভিপ্রায় রেফারেন্সটি দেখুন। -
app:queryPatterns
: এই অভিপ্রায়টির জন্য ব্যবহারকারীর কাছ থেকে প্রত্যাশিত প্রশ্নের একটি স্ট্রিং অ্যারে রিসোর্স। এই বৈশিষ্ট্যটি কেবল কাস্টম অভিপ্রায়গুলির জন্যই প্রযোজ্য, কারণ বিআইআইএস ইতিমধ্যে ব্যবহারকারীরা যে কাজগুলি করার চেষ্টা করছে সেগুলি বা তারা যে তথ্যগুলি অনুসন্ধান করে তা প্রকাশ করে এমন সাধারণ উপায়গুলির মডেলগুলি অন্তর্ভুক্ত করে।
<ইনটেন্ট>
অ্যাপ্লিকেশন কার্যকারিতা ব্যবহার করে কীভাবে কোনও ব্যবহারকারীর ক্যোয়ারী পূরণ করা উচিত তা নির্ধারণ করে অ্যান্ড্রয়েড intent
উপাদান। বিকাশকারীরা একটি capability
একাধিক <intent>
ট্যাগ সরবরাহ করতে পারে। সহকারী প্রথম <intent>
একটি capability
ব্যবহার করে ব্যবহারকারীর ক্যোয়ারী পূরণ করার চেষ্টা করে যার জন্য সমস্ত প্রয়োজনীয় পরামিতি সরবরাহ করা হয়।
গুণাবলী:
-
android:action
: অভিপ্রায়Action
টাইপ।ACTION_VIEW
ডিফল্ট। -
android:targetClass
: টার্গেট ক্রিয়াকলাপ শ্রেণি, উদাহরণস্বরূপ:"com.example.exercise.ExerciseActivity"
-
android:targetPackage
: লক্ষ্য ক্রিয়াকলাপ শ্রেণিযুক্ত প্যাকেজ, উদাহরণস্বরূপ:"com.example.exercise
-
android:data
: এই ক্ষেত্রটি<url-template>
দ্বারা ওভাররাইট করা হয়েছে যদি সেই ট্যাগটিintent
ঘোষণা করা হয়।
<url-template>
ডিভাইসে খোলার জন্য একটি গভীর লিঙ্ক ইউআরআই নির্মাণের জন্য টেমপ্লেট। টেমপ্লেটের জন্য প্রয়োজনীয় সমস্ত পরামিতি পাওয়া গেলে টেমপ্লেটটি অন্তর্নির্মিত ইন্টেন্ট প্যারামিটারগুলির সাথে প্রসারিত হতে পারে। এইচটিটিপি ইউআরএল টেমপ্লেটের উদাহরণগুলির জন্য, ইউআরএল টেমপ্লেটগুলিতে উইকিপিডিয়া নিবন্ধটি দেখুন। টেমপ্লেট ফর্ম্যাটটি আরএফসি 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 |
ইউআরএল টেম্পলেটগুলি কনফিগার করার বিষয়ে আরও তথ্যের জন্য, পরিপূর্ণতায় ইউআরএল টেম্পলেটগুলি দেখুন।
<অতিরিক্ত>
একটি intent
জন্য অতিরিক্ত ডেটা সংজ্ঞায়িত করে। অ্যাপ্লিকেশন ক্রিয়াকলাপের জন্য, এই ক্ষেত্রটি কেবল capability
জন্য [অগ্রভাগের অ্যাপের অনুরোধ] [] সক্ষম করতে ব্যবহৃত হয়।
<প্যারামিটার>
অভিপ্রায় প্যারামিটার মানগুলিতে একটি বিআইআই প্যারামিটার মানচিত্র। আরও তথ্যের জন্য, প্যারামিটার ডেটা এবং ম্যাচিং দেখুন।
গুণাবলী:
-
android:name
: এইintent
প্যারামিটারের সাথে যুক্ত করতে বিআইআই প্যারামিটারের নাম। নামটি বিআইআই প্যারামিটারের একটি পাতা-স্তরের ক্ষেত্র হওয়া উচিত (উদাহরণস্বরূপ,foodObservation.aboutFood.name
)। -
android:key
: একটি বিআইআই প্যারামিটার মানের বিকাশকারী-সংজ্ঞায়িত কী। উদাহরণস্বরূপ, আপনিmessage.recipient.name
জন্যcontact_name
সংজ্ঞায়িত করতে পারেন rec -
android:mimeType
: প্যারামিটারের মিমেটাইপ যেমনtext/*
। এই ক্ষেত্রটি কেবল কাস্টম উদ্দেশ্যগুলির পরামিতিগুলির জন্য প্রয়োজনীয়। -
android:required
: ব্যবহারকারীর ক্যোয়ারিকে এই অভিপ্রায়টি পরিপূর্ণতার জন্য ব্যবহার করার জন্য এই প্যারামিটারটি অন্তর্ভুক্ত করা দরকার কিনা তা ঘোষণা করে। যদি প্যারামিটারটি উপলভ্য না থাকে তবে সহকারীcapability
জন্য সংজ্ঞায়িত পরবর্তীintent
ব্যবহার করে ব্যবহারকারীর ক্যোয়ারীটি পূরণ করার চেষ্টা করে।
<শর্টকাট-ফুলফিলমেন্ট>
নির্দিষ্ট করে যে নির্দিষ্ট প্যারামিটারের জন্য একটি ইনলাইন ইনভেন্টরি শর্টকাটে সংজ্ঞায়িত একটি intent
পরিপূর্ণতার জন্য ব্যবহার করা উচিত। বিশদের জন্য, শর্টকাট অভিপ্রায় ব্যবহার করে পরিপূর্ণতা দেখুন।
<প্যারামিটার> ( <shortcut-fulfillment>
> এর জন্য)
Optional attribute that maps a single BII parameter to inline inventory shortcut fulfillment. For details, see Fulfillment using shortcut intents .
বৈশিষ্ট্য:
-
android:name
: Name of the BII parameter to associate to inline inventory shortcut fulfillment. The name should be a leaf-level field of the BII parameter (for example,menuItem.name
).
<slice>
Enables Assistant to embed the result of a query matching this capability
as an Android Slice. For details, see Integrate App Actions with Android Slices .
Shortcut schema
The following table describes attributes of shortcut
elements that are used to enable App Actions functionality. When including a tag, all of its attributes are required unless marked "optional".
Shortcuts.xml tag | এর মধ্যে রয়েছে | গুণাবলী |
---|---|---|
<shortcut> | <shortcuts> | |
<intent> | <shortcut> | |
<capability-binding> |
| |
<parameter-binding> | <capability-binding> | |
<extra> | <shortcut> | Only applicable for Enum parameter matching . |
Shortcut schema description
This section describes the shortcut
schema elements.
<shortcut>
An Android <shortcut>
defined in shortcuts.xml
with certain attributes that are relevant for App Actions. String values for the shortcutShortLabel
and shortcutLongLabel
fields are referenced via the APK's string resources .
গুণাবলী:
-
android:shortcutId
: Identifier for this shortcut. -
android:shortcutShortLabel
: String resource representing a brief shortcut phrase. For example,"@string/callDavidShort"
representing the value "Call David." -
android:shortcutLongLabel
: String resource representing a long shortcut phrase. For example,"@string/callDavidLong"
representing the value "Make an audio call to David."
<intent>
Android intent associated to this shortcut. This intent
is executed when a user launches this shortcut using voice or touch.
shortcut
intent attributes are identical to capability
intent
attributes.
<capability-binding>
Associates a shortcut
to an App Actions capability
. Adding this element to a shortcut
enables it for voice fulfillment using Assistant
.
গুণাবলী:
-
android:key
: Theandroid:name
attribute of thecapability
thisshortcut
is bound to. For example,actions.intent.START_EXERCISE
.
<parameter-binding>
Optional attribute that associates a shortcut
to a single parameter of an App Actions capability
. If a parameter-binding
is defined for a shortcut
, the shortcut can be used to provide an inline inventory entity to a BII parameter. For more details, see Inline inventory for App Actions .
গুণাবলী:
-
android:key
: The name of thecapability
BII parameter to associate this shortcut to. For example,exercise.name
. -
android:value
: theentity
value. This can be a singleentity
or a resource list.
<extra>
The extra
bundle data for the shortcut. sameAs is the only data relevant to App Actions shortcut
elements. The sameAs URL refers to a reference web page that unambiguously identifies the entity. Used to specify an enum value if and only if the intent parameter type is a subtype of schema.org/Enumeration . It is required for parameter fields whose types are subtypes of schema.org/Enumeration
(for example: MealTypeBreakfast
).
গুণাবলী:
-
android:key
: The supported value for App Actions is:sameAs
-
android:value
: ThesameAs
URL value
For more details, see Matching enumerated parameter values .
Intent fulfillment options
You define intent
elements within a <capability>
to declare how Assistant responds to, or fulfills, user voice commands that match that capability. There are several ways to configure how an intent
launches a fulfillment destination in your app, depending on how your app navigation is structured.
The following fulfillment options are available:
Explicit intents : Launch a specific app component by defining the
targetClass
andtargetPackage
attributes for theintent
. This is the recommended App Actions fulfillment method.Deep links : Launch app destinations using Android deep links by defining a
<url-template>
tag within theintent
element. This method is useful if your app navigation already relies on deep links.Intent data : You can provide a fulfillment URI in the
intent
android:data
attribute. This field is overwritten by<url-template>
data if that tag is also defined within theintent
.
Parameter data and matching
By default, Assistant sends BII parameters extracted from the user query to your app as extra
data of the Android intent
defined in the capability
.
Alternately, you can declare a <url-template>
tag in the capability
that contains placeholders for dynamic parameters. This template maps to one of your Android activities, using an App Links URL , a custom scheme, or an Intent-based URL .
Using intent Extras
The following example demonstrates an explicit intent defined for a capability
fulfillment:
<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>
Given the above sample, for a user query like, "Hey Google, order a latte from ExampleApp," the app receives an intent
that invokes the component: targetPackage
, targetClass
. The component receives an Extra with key = "exercise"
, value = "Running"
.
Using a URL template for Android deep links
If your app is already able to handle app-linked URLs, with dynamic parameters, you can define a <url-template>
in the intent
to generate Android deep links for fulfillment. The following sample defines a <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>
Given the above sample, for a user query like, “Hey Google, order a latte from ExampleApp," the app receives the generated URL: "myapp://start?exercise=Running".
To map the BII parameter to a position in your URL, you use the android:name
attribute of the <parameter>
tag. This attribute corresponds to the android:key
value in the URL template that you want to substitute with information from the user. The android:key
value must be present in your <url-template>
and enclosed by curly braces ( {}
).
Match enumerated parameter values
Some BII parameters provide enumerated values to your fulfillment intent, for example, the supported text values of the RECORD_FOOD_OBSERVATION
BII. For these parameters, Assistant matches the user's query ("Breakfast") to an entity whose sameAs
value matches the enum schema URL ( https://schema.googleapis.com/MealTypeBreakfast
). To associate enum values for a supported entity
, you declare a sameAs
association in your shortcut
. The following sample demonstrates a sameAs
association for an inline entity shortcut:
<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>
In the above example, if the RECORD_FOOD_OBSERVATION
capability triggers a match for the "breakfast" meal type, the following Extra is sent with the fulfillment intent
:
-
key = "for_meal"
-
value = "meal_breakfast"
বৈশিষ্ট্য
The following App Actions features are available in shortcuts.xml
.
Inline inventory for App Actions
For some BII parameters, shortcuts can be used to guide entity extraction to a set of supported entities specified in shortcuts.xml
, known as inline inventory. For details, see Inline inventory .
Custom intents
Custom intents can be declared in shortcuts.xml
to voice enable features in your app that don't match available BIIs. While similar in functionality to a BII definition, custom intents require two additional attributes in shortcuts.xml
:
app:queryPatterns
: Array resource that declares the different query patterns for a custom intent.android:mimeType
: Parameter type of a custom intent. This field is not required for BIIs, where the parameter type is known. For custom intent parameters, a supported semantic type must be declared.
For more details, see Custom intents .