פיתוח פעולות באפליקציה

התכונה 'פעולות באפליקציה' מאפשרת למשתמשים להפעיל פונקציונליות באפליקציה ל-Android באמצעות בקשה Google Assistant או באמצעות מקשי הקיצור ל-Android שהוצעו על ידי Assistant. האלה הם השלבים העיקריים להרחבת האפליקציה ל-Android באמצעות 'פעולות באפליקציה':

  1. זיהוי הפונקציונליות בתוך האפליקציה להפעלה וההתאמה שלה Intent מובנה (BII).
  2. מתן פרטי מילוי הזמנות ל-BII.
  3. לוחצים ל-Assistant על קיצורי הדרך של הפעולה באפליקציה.
  4. תצוגה מקדימה של הפעולות באפליקציה במכשיר בדיקה.
  5. יוצרים גרסת בדיקה של האפליקציה.
  6. שליחת בקשה לבדיקה ולפריסה של 'פעולות באפליקציה'.

לחלופין, ניתן להגדיר קיצורי דרך דינמיים שיסופקו ל-Assistant כדי שהיא תוכל להציע אותם למשתמשים שלך. יצירת פעולה באפליקציה באמצעות אפליקציה לדוגמה: בהתאם להנחיות של App Actions Codelab.

הדרישות

לפני שמתחילים לפתח את האפליקציה 'פעולות באפליקציה', צריך לוודא שאתם והאפליקציה עומדים בדרישות הדרישות הבאות:

  • נדרש חשבון Google עם גישה אל Google Play Console.
  • צריך לפרסם את האפליקציה בחנות Google Play, כי 'פעולות באפליקציה' הן זמינה רק לאפליקציות שמתפרסמות שם. בנוסף, צריך לוודא שהאפליקציה לא מיועד לשימוש בפרופיל עבודה, כי אין תמיכה בפעולות באפליקציה באמצעות Google Play לארגונים.
  • יש צורך במכשיר פיזי או וירטואלי כדי לבדוק את הפעולות באפליקציה.
  • במכשיר שלכם צריכה להיות מותקנת הגרסה העדכנית ביותר של Android Studio.
  • עליך להשתמש באותו חשבון Google כדי להיכנס ל-Android Studio, אפליקציית Google במכשיר הבדיקה ו-Google Play Console.
  • צריך להגדיר את Assistant במכשיר הבדיקה ולבדוק אותה על ידי ביצוע מגע & לוחצים לחיצה ארוכה על לחצן דף הבית.

התאמה לאובייקטים מובנים של Intent בעזרת תכונות האפליקציה

זיהוי הפונקציונליות באפליקציה ל-Android שהמשתמשים עשויים לרצות לעבור אליהם באמצעות בקשה קולית ולבדוק את חומר עזר מובנה של Intent כדי למצוא יעדי BII מתאימים במיוחד למקרה כזה. מודלים של BIIS לשאילתות של משתמשים למשימות שהם רוצים לביצועים, לכן לחפש מזהי BII שתואמים לפונקציונליות העיקרית ולמשתמש זורמים באפליקציה שלכם.

יש רכיבי BII נפוצים שכמעט כל אפליקציה ל-Android יכולה להשתמש בהם, כמו הרחבה חיפוש בתוך האפליקציה ל-Assistant באמצעות actions.intent.GET_THING BII או מתן אפשרות למשתמשים להפעיל תכונות ספציפיות באפליקציה באמצעות הקול שלהם להטמעת ה-BII של actions.intent.OPEN_APP_FEATURE.

יש גם מזהי BII שמאפשרים תרחישים לדוגמה אנכיים או ספציפיים לקטגוריה. עבור לדוגמה, אפליקציה להזמנת אוכל עשויה להשתמש actions.intent.ORDER_MENU_ITEM BII.

כדי להבטיח חוויית משתמש מעולה ולמנוע עיכובים אפשריים באישור, חשוב לוודא שכל BII שאתם מטמיעים רלוונטי לפונקציונליות שלכם באפליקציה.

כדי לבצע פעולות באפליקציה, צריך להפעיל את ה-Intents של Android מאפליקציית Assistant כדי לבצע למשתמשים ישירות לתוכן ספציפי באפליקציה. אפשר להגדיר כוונות כדי להתחיל פעילות בצורה מפורשת על ידי ציון הערכים targetClass targetPackage שדות. אם באפליקציה כבר מוטמע קישור עומק ל-Android כתובות URL, יש לך אפשרות להגדיר את הכוונה להשתמש בקישור עומק פרטים נוספים זמינים בקטע בדיקת הפעילות לעומק קישורים.

שליחת פרטים של מילוי הזמנות לאובייקטים מובנים של Intent

רוב הפיתוח של פעולה באפליקציה הוא הצהרה על יכולת shortcuts.xml קובץ המשאבים של האפליקציה ל-Android שבה לציין את ה-BII שנבחר ואת אופן מילוי ההזמנות המתאים. BII יוצר מודל שאילתה של המשתמש, וכוונת מילוי ההזמנה מאפשרת ל-Assistant מידע על אופן ביצוע המשימה.

בקובץ shortcuts.xml, ממשקי ה-BII מיוצגים בתור <capability> וכל מילוי הזמנות מיוצג כרכיב <intent>:

<shortcuts>
    <capability android:name="actions.intent.ORDER_MENU_ITEM">
        <intent
            android:action="android.intent.action.VIEW"
            android:targetPackage="com.example.app"
            android:targetClass="com.example.app.browse">
            <parameter
                android:name="menuItem.name"
                android:key="query">
            </parameter>
        </intent>
    </capability>

ברוב ה-BII, מחלצים את הפרמטרים של Intent מהשאילתה של המשתמש. על סמך ישויות schema.org. לאחר מכן האפליקציה משתמשת ב-BII האלה כדי להפנות משתמשים ליכולת שנבחרה. לדוגמה, לפני קוד ממפה את הפרמטר BII menuItem.name ל-query של Android intent הפרמטר.

אם אתם מבצעים פעולות באמצעות קישורי עומק, עליכם להשתמש בשדה urlTemplate כדי להגדיר את כתובת ה-URL של קישור העומק ש-Assistant יוצרת:

<shortcuts>
    <capability android:name="actions.intent.ORDER_MENU_ITEM">
        <intent android:action="android.intent.action.VIEW">
            <url-template android:value="myfoodapp://browse{?query}" />
            <parameter android:name="menuItem.name"
                android:key="query"
                android:mimeType="text/*">
            </parameter>
        </intent>
    </capability>
</shortcuts>

לקבלת פרטים חשובים על הוספת 'פעולות באפליקציה' לקובץ shortcuts.xml, כדאי לעיין במאמר יצירה של shortcuts.xml. הדף הזה גם איך לציין את ערכי הפרמטרים שהאפליקציה מצפה להם.

יישום הכוונה המובנית של GET_THING

אם האפליקציה כוללת פונקציית חיפוש, צריך להטמיע את הפונקציה actions.intent.GET_THING BII לפונקציה הזו. לאחר מכן Assistant תוכל להעביר משתמשים בפונקציית החיפוש של האפליקציה כדי לקבל תוצאות בתוך האפליקציה כשהם מבצעים שאילתות כמו "Ok Google, search for Example Thing on Example App"

בקובץ shortcuts.xml, מטמיעים את המאפיין <capability> עבור ה-BII של actions.intent.GET_THING להטמיע כל BII אחר. אפשר להשתמש בכמה מילוי הזמנות למטרות GET_THING כל עוד מספקים לפחות מילוי הזמנה אחד שעובר את המשתמש שאילתה לפונקציית החיפוש של האפליקציה.

דוגמה להוספת ה-BII של actions.intent.GET_THING shortcuts.xml:

  <capability android:name="actions.intent.GET_THING">
    <intent
      android:targetPackage="com.example.myapp"
      android:targetClass="com.example.myapp.MySearchActivity">
      <parameter android:name="thing.name" android:key="query" />
    </intent>
  </capability>

בחיפוש שלך, Activity, עליך לחלץ את שאילתת החיפוש מהנתונים הנוספים של intent ומעבירים אותו לפונקציית החיפוש של האפליקציה. בקוד הקודם, שאילתת חיפוש, מועברת כמפתח query, ממופה אל "thing.name" BII. לאחר מכן, בצעו חיפוש עם השאילתה ותציגו את התוצאות בממשק המשתמש.

אופציונלי: ניתן להעביר ל-Assistant מקשי קיצור לפעולה באפליקציה

אחרי שתגדירו יכולת עבור הפעולה שלכם, משתמשים יוכלו להפעיל כדי לעשות את זה, אומרים משהו כמו "Ok Google, order a פיצה on Example App". Assistant יכולה להציע למשתמשים קיצורי דרך ל-Android לפעולות שלך וכך לאפשר להם לגלות את הפעולות שלכם ולשחזר אותן לבצע אותן שוב. עוזר/ת אישי/ת יכול להציע קיצורי דרך דינמיים וגם סטטיים.

כדי לדחוף קיצורי דרך דינמיים ל-Assistant, צריך להשתמש בשילוב קיצורי הדרך של Google לספרייה. ספריית Jetpack הזו מאפשרת ל-Assistant להשתמש בקיצורי הדרך להציע אותם למשתמשים במועד המתאים.

מידע נוסף זמין במאמר בנושא העברת מקשי קיצור דינמיים ל-Assistant.

תצוגה מקדימה של 'פעולות באפליקציה'

במהלך הפיתוח והבדיקה, משתמשים הפלאגין של Google Assistant ל-Android Studio כדי לבדוק אם 'פעולות באפליקציה' מתאימות לאפליקציה שלכם. הפלאגין יוצר תצוגה מקדימה של 'פעולות באפליקציה' ב-Assistant בחשבון Google. בעזרת כלי הבדיקה אפשר לבדוק במכשיר בדיקה פיזי או באמולטור של נתונים, באמצעות אספקת קלט של BII הפרמטרים שאתם מצפים לקבל מהמשתמשים.

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

בודקים את האפליקציה במצב טיוטה באמצעות הכלים למפתחים של Google Play צריך למסוף התשלום לפני שליחת האפליקציה לבדיקה. מידע נוסף על השימוש ב-Google Play Console לפריסת טיוטה של האפליקציה שלכם, ראו הכנה והפעלה של גרסה.

יצירת גרסה לבדיקה

כשתהיו מוכנים לבדוק את הפעולות באפליקציה עם בודקים נוספים, ליצור גרסת בדיקה פנימית או סגורה של האפליקציה. כברירת מחדל, התוכן הפנימי בודקי גרסה סגורה יכולים לגשת לפעולות באפליקציה שכבר נבדקו ואושרו.

כדי להעניק גישת בדיקה לכל הפעולות באפליקציה, כולל פעולות שלא אושרו, להורות לבודקים שלך להצטרף קבוצת Google של תוכנית הפיתוח של פעולות באפליקציה. חברים בקמפיין הזה לקבוצה תהיה גישה לכל הפעולות באפליקציה בגרסאות של בדיקות פנימיות בלי ליצור תצוגות מקדימות באמצעות הכלי לבדיקת פעולות באפליקציה. יכולות לעבור עד שלוש שעות אחרי ההצטרפות לקבוצה כדי להפוך אותו לזמין.

שליחת בקשה לבדיקה ולפריסה של 'פעולות באפליקציה'

פעולות באפליקציה לא זמינות למשתמשים באפליקציות שפרסמת או בבדיקה פתוחה לציבור עד שהם ייבדקו ויאושרו. בדיקת הפעולות באפליקציה לא משפיעה על סטטוס הבדיקה והפריסה של האפליקציות ל-Android ב-Google Play. גם אם האפליקציה שהגשת אושרה ותפורסם בחנות Play, יכול להיות ש-Google בודקת את shortcuts.xml. פעולות באפליקציה לא עובדות עבור משתמשי קצה עד שהבדיקה הזו תאושר.

כאשר פורסים את האפליקציה, הפעולות באפליקציה נשארות מופעלות. אבל, לפעמים הגרסאות שנפרסו מחדש כפופות לבדיקה של Google. אם הגרסה החדשה לא פועל כראוי או מכיל הפרות מדיניות, Google שומרת לעצמה את הזכות משביתים את 'פעולות באפליקציה' עבור האפליקציה.

כדי לשלוח את הפעולות באפליקציה לבדיקה:

  1. יש לאשר את התנאים וההגבלות של 'פעולות באפליקציה' ב-Google Play Console (הגדרות מתקדמות > פעולות באפליקציה):

    התנאים וההגבלות של &#39;פעולות באפליקציה&#39; ב-Google Play Console.

  2. מעלים את האפליקציה, שמכילה את shortcuts.xml, אל Google Play Console כרגיל לפרסום.

  3. אחרי שתעלו את האפליקציה ל-Play Console, Google תיצור איתכם קשר ב כתובת אימייל בחשבון Play Console עם מידע נוסף על הסטטוס של האפליקציה בדיקת פעולות. אפשר גם ליצור קשר עם התמיכה למפתחים של Assistant לשאלות לגבי סטטוס הבדיקה של הפעולות באפליקציה. ברשימת אנשי הקשר מציינים את המזהה של חבילת האפליקציה ובוחרים באפשרות בדיקת פעולות באפליקציה בקטע תיבת הבחירה איך נוכל לעזור לך?.

כדי להשתמש בקישור עומק לצורך הפעלת Activity באמצעות פעולה באפליקציה, Activity צריך להיות מוגדרים עם כתובות URL של קישורי עומק ומסנן Intent תואם. את קובץ המניפסט של האפליקציה ל-Android.

כדי לבדוק שהפעילויות שלך נגישות וניתן להפעיל אותן באמצעות כדי לבצע פעולות באפליקציה באמצעות קישורי עומק, מריצים את הפקודה הבאה של adb:

$ adb shell am start -a android.intent.action.VIEW -d "AppLinksURL"

לדוגמה:

$ adb shell am start -a android.intent.action.VIEW -d "https://www.example.com/deeplink"

אם הפעילות לא מופעלת כראוי באמצעות הפקודה adb, אז כדאי לבדוק את הדברים הבאים:

  • בקובץ המניפסט של האפליקציה, הפעילות מכילה android:exported=true, לכן היא יכולה תושק באמצעות Intent מ-Google Assistant.
  • אם אתם משתמשים בכתובות URL של קישורים לאפליקציות, עליכם לפעול לפי כל השלבים שמפורטים הטיפול בקישורים לאפליקציות ל-Android.

המדיניות בנושא 'פעולות באפליקציה'

'פעולות באפליקציה' חייבות לעמוד בדרישות של מדיניות ספציפית כדי להבטיח שהמשתמשים לגרום להם לקבל את החוויה הרצויה. יש לעיין בכללי המדיניות האלה לפני לשלוח את האפליקציות שלכם כדי לספק את חוויית המשתמש הטובה ביותר ולהימנע מ-Play עיכובים או דחיות של בדיקות בחנות.

  • הפניית משתמשים לתוכן המיועד על ידי המשתמשים

    פרמטרים מובנים של Intent (BII) ו/או פרמטרים מובנים של פעולה באפליקציה חייבים להפנות את המשתמשים רק אל הפעולה הרלוונטית ושהמשתמש מכוון לעשות. זה יכול לכלול תוכן מתוך האפליקציה, תוכן של האתר, או מידע שמוצג בפרוסות או בווידג'טים כל עוד זו הייתה הכוונה של המשתמש.

    לדוגמה, הטמעות של ה-BII של ORDER_MENU_ITEM ליזום הזמנה עבור האפשרות שצוינה בתפריט או עבור סוג המטבח. היחיד חריג למדיניות הזו הוא כאשר ה-BII של OPEN_APP_FEATURE מפנה משתמשים למסך הבית של האפליקציה.

  • הפניית משתמשים לתוכן אינטרנט רלוונטי

    אם המשתמשים מופנים לתוכן בדף אינטרנט, האתר חייב להיות רלוונטי הפעולה בכוונה על ידי המשתמש ונמצאת בבעלות המותג.

    לדוגמה, הפניית משתמשים שמפעילים ה-BII של GET_RESERVATION ל-google.com/travel, שאינו שייך ל- מותג האפליקציה exampledomain.com, מהווה הפרה. דוגמה נוספת לכך הפרה מפנה מחדש משתמשים שמפעילים את ה-BII של GET_CALL_HISTORY אל exampledomain.com/payment והדרישה לבצע רכישה.

  • הטמעה של ממשקי BII רלוונטיים של פעולות באפליקציה

    רכיבי BII שמוטמעים חייבים להיות קשורים ישירות לתוכן של האפליקציה, החדשה.

    לדוגמה, אם האפליקציה מסווגת בקטגוריה 'חנות Play תקשורת', לא מטמיעים את ה-BII של ORDER_MENU_ITEM, מומלצים לאפליקציות בקטגוריה 'אוכל ושתייה'.

  • הטמעה של קהלים רלוונטיים בהתאמה אישית עם כוונת רכישה

    שאילתות מוגדרות לכוונות מודעה בהתאמה אישית קשורות לתוכן של האפליקציה ול החדשה. דוגמה להפרה אפשרית של המדיניות יוצרת את ה-Intent custom.action.intent.GET_RECIPE עם דפוס שאילתה משויך "Show me burrito recipes" לאפליקציה הקטגוריה 'תחבורה בחנות Play'.