הוספת יכולות לקיצורי הדרך

היכולות ב-shortcuts.xml מאפשרות לכם להצהיר על סוגי הפעולות שהמשתמשים יכולים לבצע כדי להפעיל את האפליקציה ולבצע ישירות משימה ספציפית.

לדוגמה, פעולות באפליקציות של Google Assistant משתמשות ביכולות כדי לאפשר למפתחים להרחיב תכונות באפליקציה לכוונות מוכללות (BII), וכך לאפשר למשתמשים להפעיל ולשלוט בתכונות האלה באמצעות פקודות קוליות. יכולת מורכבת משם הפעולה ומintent שמטרגט את היעד באפליקציה שנותן מענה לכוונת המשתמש.

הגדרת יכולות בקובץ shortcuts.xml

מגדירים רכיבי capability בקובץ משאבים shortcuts.xml בפרויקט פיתוח אפליקציות ל-Android. כדי להגדיר רכיב capability, מבצעים את הפעולות הבאות:

  1. יוצרים משאב shortcuts.xml לפי ההוראות במאמר יצירת קיצורי דרך סטטיים.
  2. צריך לכלול את הפרטים הבאים ביכולת:

    • שם היכולת: הפעולה שרוצים שהאפליקציה תתמוך בה. במסמכי התיעוד של הרכיב מפורטת התכונה שדורשת הגדרות של יכולות. פקודות קוליות של פעולות באפליקציות משתמשות ב-BII‏ Action ID לשמות של יכולות, שאפשר למצוא בהפניה ל-BII. לדוגמה, ב-GET_THING BII,‏ Action ID מופיע כ-actions.intent.GET_THING.

    • יעד באפליקציה: היעד באפליקציה שאליו מגיעים אחרי הפעלת הפעולה כדי למלא את בקשת המשתמש. מגדירים יעדים באפליקציה באמצעות רכיבי intent שמוטמעים בתוך capability.

    • מיפוי פרמטרים: כל intent עשוי להכיל פרמטרים שיועברו כנתוני extra של הכוונה. לדוגמה, כל 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 הזה באמצעות שאילתה ל-Assistant, "Ok Google, start a run in ExampleApp,"‏ Assistant מבצעת את בקשת המשתמש באמצעות המידע שמופיע ברכיב intent המקונן. התג intent בדוגמה הזו מגדיר את הפרטים הבאים:

  • התג android:targetPackage מגדיר את חבילת האפליקציה של היעד עבור הכוונה הזו.
  • בשדה android:targetClass מציינים את פעילות היעד: com.example.sampleApp.ExerciseActivity.
  • ה-Intent parameter מכריז על תמיכה בפרמטר BII exercise.name ועל האופן שבו מעבירים את ערך הפרמטר – שנאסף מהמשתמש – כנתונים נוספים ב-intent.

שיוך קיצורי דרך ליכולת

אחרי שמגדירים יכולת, אפשר להרחיב את הפונקציונליות שלה על ידי שיוך של קיצורי דרך סטטיים או דינמיים. האופן שבו מקשרים קיצורי דרך ל-capability תלוי בתכונה שמטמיעים ובמילים בפועל שנכללות בבקשה של המשתמש. לדוגמה, כשמשתמש מתחיל ריצה באפליקציה למעקב אחר כושר על ידי שאילתה ל-Assistant, "Ok Google, start a run in ExampleApp" ‫Assistant יכול להשתמש בקיצור דרך כדי להפעיל מופע של capability שמגדיר ישות תרגיל תקפה של 'ריצה' לפרמטר exercise.name.

מידע נוסף על שיוך קיצורי דרך לפעולות באפליקציה זמין במאמר סקירה כללית על פעולות באפליקציה.