היכולות ב-shortcuts.xml
מאפשרות לכם להצהיר על סוגי הפעולות שהמשתמשים יכולים לבצע כדי להפעיל את האפליקציה ולבצע משימה ספציפית ישירות.
לדוגמה, פעולות באפליקציה של Google Assistant מאפשרות למפתחים להרחיב את התכונות באפליקציה לכוונות מובנות (BIIs), וכך המשתמשים יכולים להפעיל את התכונות האלה ולשלוט בהן באמצעות פקודות קוליות. יכולת מורכבת משם הפעולה ומ-intent
שמטרגט את היעד באפליקציה שמספק את כוונת המשתמש.
הגדרת יכולות בקובץ shortcuts.xml
מגדירים את הרכיבים של capability
בקובץ המשאב shortcuts.xml
בפרויקט לפיתוח אפליקציות ל-Android. כדי להגדיר רכיב capability
:
- יוצרים משאב
shortcuts.xml
לפי ההוראות במאמר יצירת קיצורי דרך סטטיים. צריך לכלול את הפרטים הנדרשים הבאים ביכולת:
שם היכולת: הפעולה שרוצים שהאפליקציה תתמוך בה. במסמכי העזרה של הרכיב מפורטות ההגדרות של היכולות הנדרשות לתכונה. בפקודות הקוליות של App Actions נעשה שימוש ב-BII
Action ID
לשמות היכולות. אפשר למצוא אותם בחומר העזר בנושא BII. לדוגמה, ב-BII שלGET_THING
, הערך שלAction ID
הואactions.intent.GET_THING
.יעד באפליקציה: היעד באפליקציה שאליו מועברת הפעולה כדי למלא את בקשת המשתמש. מגדירים את יעדי האפליקציה באמצעות רכיבי
intent
שמוטמעים ב-capability
.מיפויים של פרמטרים: כל
intent
עשוי להכיל פרמטרים שיעברו כנתוניextra
של הכוונה. לדוגמה, כל אירוע 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
מתייחס למזהה BII START_EXERCISE
. אם משתמש מפעיל את ה-BII הזה על ידי בקשה ל-Assistant, "Ok Google, start a run in ExampleApp", Assistant ממלאת את בקשת המשתמש באמצעות המידע שסופק ברכיב intent
המוטמע. השדה intent
בדוגמה הזו מגדיר את הפרטים הבאים:
- השדה
android:targetPackage
מגדיר את חבילת האפליקציה של היעד לכוונה הזו. - השדה
android:targetClass
מציין את פעילות היעד:com.example.sampleApp.ExerciseActivity
. - ה-intent
parameter
מצהיר על תמיכה בפרמטר BIIexercise.name
ועל האופן שבו מעבירים את ערך הפרמטר – שנאסף מהמשתמש – כנתונים נוספים ב-intent
.
שיוך מקשי קיצור ליכולת
אחרי שמגדירים יכולת, אפשר להרחיב את הפונקציונליות שלה על ידי שיוך של קיצורי דרך סטטיים או דינמיים. האופן שבו קיצורי הדרך מקושרים ל-capability
תלוי בתכונה שמופעלת ובמילים בפועל שכלולות בבקשה של המשתמש. לדוגמה, כשמשתמש מתחיל ריצה באפליקציית מעקב הכושר שלכם על ידי בקשה ל-Assistant, "Ok Google, start a run in ExampleApp". Assistant יכול להשתמש במקש קיצור כדי להפעיל מכונה של capability
שמגדירה ישות תרגול תקינה של 'run' לפרמטר exercise.name
.
מידע נוסף על שיוך מקשי קיצור לפעולות באפליקציה זמין במאמר סקירה כללית על פעולות באפליקציה.