قابلیت ها را به میانبرها اضافه کنید

قابلیت‌های shortcuts.xml به شما امکان می‌دهد انواع اقداماتی را که کاربران می‌توانند برای راه‌اندازی برنامه‌تان انجام دهند و مستقیماً یک کار خاص انجام دهند، اعلام کنید.

برای مثال، Google Assistant App Actions از قابلیت‌هایی استفاده می‌کند که به توسعه‌دهندگان اجازه می‌دهد ویژگی‌های درون‌برنامه را به مقاصد داخلی (BII) گسترش دهند و به کاربران این امکان را می‌دهد تا با استفاده از دستورات گفتاری آن ویژگی‌ها را فعال و کنترل کنند. یک قابلیت شامل نام عمل و intent است که مقصد را در برنامه شما هدف قرار می دهد که هدف کاربر را برطرف می کند.

قابلیت ها را در shortcuts.xml تعریف کنید

شما عناصر capability در یک فایل منبع shortcuts.xml در پروژه توسعه برنامه Android خود تعریف می کنید. برای تعریف عنصر capability ، موارد زیر را انجام دهید:

  1. با دنبال کردن دستورالعمل‌های موجود در Create static shortcuts، یک منبع shortcuts.xml ایجاد کنید.
  2. اطلاعات مورد نیاز زیر را در توانایی خود بگنجانید:

    • نام قابلیت: اقدامی که می‌خواهید برنامه شما از آن پشتیبانی کند. برای ویژگی هایی که به تعریف قابلیت نیاز دارند به مستندات مؤلفه مراجعه کنید. فرمان‌های فعال‌سازی صوتی App Actions Action ID BII برای نام‌های قابلیت‌ها استفاده می‌کنند که می‌توانید در مرجع BII پیدا کنید. برای مثال، GET_THING BII Action 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 پشتیبانی از یک پارامتر BII exercise.name و نحوه ارسال مقدار پارامتر - جمع آوری شده از کاربر - را به عنوان داده اضافی در intent اعلام می کند.

میانبرها را با یک قابلیت مرتبط کنید

هنگامی که یک قابلیت را تعریف کردید، می توانید عملکرد آن را با مرتبط کردن میانبرهای ایستا یا پویا با آن گسترش دهید. نحوه پیوند میانبرها به یک capability بستگی به ویژگی در حال پیاده سازی و کلمات واقعی موجود در درخواست کاربر دارد. به عنوان مثال، زمانی که کاربری با پرسیدن «Hey Google, start a run in ExampleApp» را از «دستیار» شروع به اجرای برنامه ردیابی تناسب اندام شما می کند. Assistant می‌تواند از یک میانبر برای راه‌اندازی نمونه‌ای از capability استفاده کند که یک موجودیت تمرین معتبر "run" را برای پارامتر exercise.name تعریف می‌کند.

برای اطلاعات بیشتر در مورد مرتبط کردن میانبرها به عملکردهای برنامه، به نمای کلی اقدامات برنامه مراجعه کنید.