قابلیتهای shortcuts.xml
به شما امکان میدهد انواع اقداماتی را که کاربران میتوانند برای راهاندازی برنامهتان انجام دهند و مستقیماً یک کار خاص انجام دهند، اعلام کنید.
برای مثال، Google Assistant App Actions از قابلیتهایی استفاده میکند که به توسعهدهندگان اجازه میدهد ویژگیهای درونبرنامه را به مقاصد داخلی (BII) گسترش دهند و به کاربران این امکان را میدهد تا با استفاده از دستورات گفتاری آن ویژگیها را فعال و کنترل کنند. یک قابلیت شامل نام عمل و intent
است که مقصد را در برنامه شما هدف قرار می دهد که هدف کاربر را برطرف می کند.
قابلیت ها را در shortcuts.xml تعریف کنید
شما عناصر capability
در یک فایل منبع shortcuts.xml
در پروژه توسعه برنامه Android خود تعریف می کنید. برای تعریف عنصر capability
، موارد زیر را انجام دهید:
- با دنبال کردن دستورالعملهای موجود در Create static shortcuts، یک منبع
shortcuts.xml
ایجاد کنید. اطلاعات مورد نیاز زیر را در توانایی خود بگنجانید:
نام قابلیت: اقدامی که میخواهید برنامه شما از آن پشتیبانی کند. برای ویژگی هایی که به تعریف قابلیت نیاز دارند به مستندات مؤلفه مراجعه کنید. فرمانهای فعالسازی صوتی App Actions
Action ID
BII برای نامهای قابلیتها استفاده میکنند که میتوانید در مرجع BII پیدا کنید. برای مثال،GET_THING
BIIAction ID
خود را بهعنوانactions.intent.GET_THING
فهرست میکند.مقصد برنامه: مقصدی که در برنامه شما انجام میشود تا درخواست کاربر را برآورده کند. با استفاده از عناصر
intent
تو در تو در داخلcapability
، مقصد برنامه را تعریف کنید.نگاشت پارامترها: هر
intent
ممکن است حاوی پارامترهایی باشد که به عنوان داده هایextra
قصد ارسال شوند. برای مثال، هر App Actions BII شامل فیلدهایی است که نشان دهنده اطلاعاتی است که کاربران اغلب در جستارهایی که BII را راهاندازی میکنند ارائه میکنند.
مثال زیر یک تعریف قابلیت را در shortcuts.xml
برای actions.intent.START_EXERCISE
نشان میدهد، یک BII که به کاربران اجازه میدهد از دستورات گفتاری با Assistant برای شروع تمرین در یک برنامه تناسب اندام استفاده کنند:
<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 اشاره دارد. اگر کاربری این BII را با پرسیدن «Hey Google, start a run in ExampleApp» از «دستیار» فراخوانی کند، «دستیار» درخواست کاربر را با استفاده از اطلاعات ارائه شده در عنصر intent
تودرتو برآورده میکند. intent
در این نمونه جزئیات زیر را تعریف می کند:
-
android:targetPackage
بسته برنامه هدف را برای این هدف تنظیم می کند. - فیلد
android:targetClass
فعالیت مقصد را مشخص میکند:com.example.sampleApp.ExerciseActivity
. -
parameter
intent پشتیبانی از یک پارامتر BIIexercise.name
و نحوه ارسال مقدار پارامتر - جمع آوری شده از کاربر - را به عنوان داده اضافی درintent
اعلام می کند.
میانبرها را با یک قابلیت مرتبط کنید
هنگامی که یک قابلیت را تعریف کردید، می توانید عملکرد آن را با مرتبط کردن میانبرهای ایستا یا پویا با آن گسترش دهید. نحوه پیوند میانبرها به یک capability
بستگی به ویژگی در حال پیاده سازی و کلمات واقعی موجود در درخواست کاربر دارد. به عنوان مثال، زمانی که کاربری با پرسیدن «Hey Google, start a run in ExampleApp» را از «دستیار» شروع به اجرای برنامه ردیابی تناسب اندام شما می کند. Assistant میتواند از یک میانبر برای راهاندازی نمونهای از capability
استفاده کند که یک موجودیت تمرین معتبر "run" را برای پارامتر exercise.name
تعریف میکند.
برای اطلاعات بیشتر در مورد مرتبط کردن میانبرها به عملکردهای برنامه، به نمای کلی اقدامات برنامه مراجعه کنید.