قابلیتهای موجود در shortcuts.xml به شما امکان میدهد انواع کنشهایی را که کاربران میتوانند
برای راهاندازی برنامهتان و انجام مستقیم تکلیفی خاص انجام دهند اعلام کنید. قابلیت
شامل نام کنش و intent است که مقصد را در
برنامه شما هدف قرار میدهد و قصد کاربر را برآورده میکند.
تعریف قابلیتها در shortcuts.xml
عناصر capability را در فایل منبع shortcuts.xml در پروژه توسعه برنامه Android خود تعریف میکنید. برای تعریف عنصر capability، کارهای زیر را انجام دهید:
- با دنبال کردن دستورالعملهای ایجاد میانبرهای ایستا، منبع
shortcuts.xmlایجاد کنید. اطلاعات الزامی زیر را در قابلیتتان بگنجانید:
نام قابلیت: کنشی که میخواهید برنامهتان پشتیبانی کند. به سند مؤلفه برای ویژگیای که به تعاریف قابلیت نیاز دارد مراجعه کنید.
مقصد برنامه: مقصدی در برنامه شما که کنش برای برآورده کردن درخواست کاربر در آن راهاندازی میشود. مقصدهای برنامه را بااستفاده از عناصر
intentتودرتو درcapabilityتعریف کنید.نگاشتهای پارامتر: هر
intentممکن است حاوی پارامترهایی باشد که باید بهعنوان دادههایextraقصد ارسال شوند.
مثال زیر تعریف قابلیت را در shortcuts.xml
برای actions.intent.START_EXERCISE نشان میدهد، یک «هدف داخلی برنامه» که به کاربران اجازه میدهد از فرمانهای
گفتاری با «دستیار» برای شروع تمرین در برنامه تناسب اندام استفاده کنند:
<shortcuts xmlns:android="http://schemas.android.com/apk/res/android"> <capability android:name="actions.intent.START_EXERCISE"> <intent android:action="android.intent.action.VIEW" android:targetPackage="com.example.sampleApp" android:targetClass="com.example.sampleApp.ExerciseActivity"> <parameter android:name="exercise.name" android:key="exerciseType"/> </intent> </capability> </shortcuts>
در مثال بالا، مشخصه <capability> android:name به
START_EXERCISE BII اشاره دارد. اگر کاربری این «هدف درونساخت برنامه» را با پرسیدن از «دستیار» فراخوانی کند، «Ok Google،
دویدن را در ExampleApp شروع کن»، «دستیار» درخواست کاربر را بااستفاده از
اطلاعات ارائهشده در عنصر تودرتوی intent برآورده میکند. intent در این نمونه
جزئیات زیر را تعریف میکند:
android:targetPackageبسته برنامه هدف را برای این هدف تنظیم میکند.- فیلد
android:targetClassفعالیت مقصد را مشخص میکند:com.example.sampleApp.ExerciseActivity. - قصد
parameterپشتیبانی از پارامتر BIIexercise.nameو نحوه ارسال مقدار پارامتر (جمعآوریشده از کاربر) را بهعنوان داده اضافی درintentاعلام میکند.
مرتبط کردن میانبرها با قابلیت
وقتی قابلیتی را تعریف کردید، میتوانید با مرتبط کردن میانبرهای ایستا یا پویا با آن،
عملکرد آن را گسترش دهید. نحوه پیوند میانبرها به capability
به ویژگیای که پیادهسازی میشود و کلمات واقعی موجود در
درخواست کاربر بستگی دارد. برای مثال، وقتی کاربری با پرسیدن از «دستیار» دویدن را در برنامه ردیابی تناسب اندام شما شروع میکند،
«Ok Google، دویدن را در ExampleApp شروع کن.» «دستیار»
میتواند از میانبر برای راهاندازی نمونهای از capability استفاده کند که
نهاد تمرین معتبر «دویدن» را برای پارامتر exercise.name تعریف میکند.