היכולות ב-shortcuts.xml מאפשרות לכם להצהיר על סוגי הפעולות שהמשתמשים יכולים לבצע כדי להפעיל את האפליקציה ולבצע משימה ספציפית באופן ישיר. יכולת
מורכבת משם הפעולה ומ-intent שמטרגט את היעד באפליקציה ומזהה את כוונת המשתמש.
הגדרת יכולות בקובץ shortcuts.xml
מגדירים רכיבי capability בקובץ משאבים shortcuts.xml בפרויקט פיתוח אפליקציות ל-Android. כדי להגדיר רכיב capability, מבצעים את הפעולות הבאות:
- יוצרים משאב
shortcuts.xmlלפי ההוראות במאמר יצירת קיצורי דרך סטטיים. חשוב לכלול את הפרטים הבאים ביכולת:
שם היכולת: הפעולה שרוצים שהאפליקציה תתמוך בה. פרטים נוספים זמינים במסמכי התיעוד של הרכיב שדורש הגדרות של יכולות.
יעד באפליקציה: היעד באפליקציה שאליו מגיעים אחרי הפעלת הפעולה כדי למלא את בקשת המשתמש. מגדירים יעדים באפליקציה באמצעות רכיבי
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מכריז על תמיכה בפרמטר BIIexercise.nameועל האופן שבו מעבירים את ערך הפרמטר – שנאסף מהמשתמש – כנתונים נוספים ב-intent.
שיוך קיצורי דרך ליכולת
אחרי שמגדירים יכולת, אפשר להרחיב את הפונקציונליות שלה על ידי שיוך קיצורי דרך סטטיים או דינמיים. האופן שבו קיצורי דרך מקושרים ל-capability
תלוי בתכונה שמוטמעת ובמילים בפועל שנכללות בבקשה של המשתמש. לדוגמה, כשמשתמש מתחיל ריצה באפליקציה למעקב אחר כושר על ידי פנייה אל Assistant, "Ok Google, start a run in ExampleApp". Assistant יכול להשתמש בקיצור דרך כדי להפעיל מופע של capability שמגדיר ישות תרגיל תקפה של 'ריצה' לפרמטר exercise.name.