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

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

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

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

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

    • שם היכולת: הפעולה שרוצים שהאפליקציה תתמוך בה. פרטים נוספים זמינים במסמכי התיעוד של הרכיב שדורש הגדרות של יכולות.

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

    • מיפוי פרמטרים: כל intent עשוי להכיל פרמטרים שיועברו כנתוני extra של הכוונה.

בדוגמה הבאה מוצגת הגדרת יכולת ב-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.