פתרון בעיות

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

כללי

שגיאה: ההודעה "לא נמצאה אפליקציה לפתיחת כתובת ה-URL" מופיעה בהתראה קצרה

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

שגיאה: "האפליקציה לא מותקנת"

יכול להיות שהשגיאה הזו מציינת שהרכיב <intent-filter> בקובץ AndroidManifest.xml לא מסנן את קישור העומק שציינת ב-actions.xml. חשוב לבדוק את זה לפני שמדווחים על באג.

השגיאה: "נמצאה הפניה לקבוצת ישויות שלא מכילה מזהה קבוצת ישויות או מסנן של כתובת URL" מופיעה ב-Android Studio

התנאי הזה נגרם בגלל בעיה ידועה ב-linter של התג <entity-set-reference>. אפשר להתעלם מההודעה הזו. כדי לעקוף את הבעיה, אפשר להשבית את בדיקת ה-lint של התג הזה על ידי הוספת המאפיין tools:ignore="ValidActionsXml".

דוגמה להפניה לקבוצת ישויות עם בדיקת lint מושבתת:

<entity-set-reference entitySetId="example" tools:ignore="ValidActionsXml" />

שגיאה: "מיקום לא חוקי" של מסמך סכימת הפעולות בזמן העלאת APK

אם אתם משתמשים בכלי אופטימיזציה או ערפול קוד שמשפיע על המשאבים של קובץ ה-APK של הגרסה, יכול להיות שההעלאה של קובץ ה-APK תיכשל. כלים כמו ProGuard שלא משנים קובצי משאבים לא גורמים לבעיה הזו.

כדי לפתור את הבעיה, נסו להשבית את הכלי בקובץ actions.xml של האפליקציה (לדוגמה, באמצעות רשימת היתרים).

שגיאה: "יש APK פעיל או קובץ Android App Bundle שזוהה בהם קובץ actions.xml. כדי להמשיך, עליך לאשר את התנאים וההגבלות של Actions on Google" מופיעה ב-Google Play Console

יכול להיות שהשגיאה הזו תופיע בזמן יצירת גרסת אפליקציה ב-Play Console. כדי לאשר את התנאים וההגבלות של Actions on Google:

  1. בוחרים את האפליקציה ב-Play Console.
  2. עוברים אל הגדרה > הגדרות מתקדמות.
  3. לוחצים על הכרטיסייה Actions on Google.
  4. מסמנים את התיבה אני רוצה לשלב את השירותים שלי עם "פעולות באפליקציה" באמצעות Actions on Google ופועלים לפי ההוראות.

הכפתור "אישור" בטופס התנאים וההגבלות של Play מושבת.

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

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

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

הפלאגין של כלי הבדיקה של App Actions לא מצליח לאתר את הקובץ actions.xml.

מוודאים שהוספתם את התג <meta-data> הנכון בקובץ AndroidManifest.xml.

התצוגה המקדימה של הפעולה באפליקציה לא תואמת לקובץ actions.xml הנוכחי.

התצוגה המקדימה לא מתעדכנת באופן דינמי עם התוכן של קובץ ה-actions.xml. אחרי שמשנים את הקובץ actions.xml באופן ידני או אחרי שמחליפים וריאנט build ב-Android Studio, שומרים את הקובץ actions.xml ולוחצים על עדכון התצוגה המקדימה בכלי הבדיקה.

הפלאגין של כלי הבדיקה של App Actions הפסיק לפעול או שהוא יוצר שגיאות.

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

אם השגיאה עדיין מוצגת, צריך לדווח על באג ולשלוח ל-Google את הפרטים הבאים:

  • פרטים על תיבת הדו-שיח של השגיאה
  • יומני Android Studio. עוברים אל עזרה > הצגת היומן ב-Finder. כאן מוצג המיקום של idea.log ב-Finder. מחפשים את המחרוזת "Submit Actions Request Body:" בקובץ היומן, ומדביקים את תגובות השרת (אמורות להיות שתי תוצאות לפעולות).

כלי הבדיקה של App Actions יוצר את השגיאה UnknownHostException או שגיאות אחרות בחיבור לרשת

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

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

  • לפני שיוצרים תצוגות מקדימות, צריך לוודא שיש חיבור פעיל לאינטרנט.
  • אם החיבור לאינטרנט פעיל והרשת המקומית משתמשת בשרת proxy, צריך לבדוק את הדברים הבאים:

    • בודקים את הגדרות ה-proxy של ה-IDE. מידע נוסף זמין בהוראות להגדרת שרת proxy ב-Android Studio או ב-IntelliJ.
    • אם שרת ה-Proxy דורש רשימת בקרת גישה (ACL), צריך לעדכן את ה-ACL כדי לאפשר את תבנית ה-URL הזו: https://actions.googleapis.com/**.

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

בהתאם להגדרות שלכם, התגובה הזו יכולה להופיע מסיבות שונות. כדי לפתור את הבעיה, נסו את הפעולות הבאות:

  1. נכנסים ל-Android Studio, ל-Play Console ולמכשיר הבדיקה באמצעות אותו חשבון Google.
  2. מפעילים את סנכרון נתוני המכשיר.
  3. מגדירים את השפה במכשיר וב-Google Assistant לen-US.
  4. מוודאים ששם החבילה של האפליקציה ב-Google Play Console זהה לשם החבילה באפליקציית הבדיקה.
  5. בהגדרה של מילוי הבקשה urlTemplate בקובץ actions.xml, מוודאים שהערכים של android:host ו-android:scheme תואמים למה שהוצהר בקובץ AndroidManifest.
  6. מסירים את כל ההתקנות הקודמות של האפליקציה ממכשיר הבדיקה ומתקינים גרסה חדשה.
  7. מוחקים את התצוגה המקדימה מכלי הבדיקה של App Actions ויוצרים תצוגה מקדימה חדשה.
  8. בכלי Logcat, בודקים אם יש כשלים שקשורים למילוי בקשות ב-Google Assistant. אמורה להופיע כוונה (intent) שהופעלה באפליקציה.
  9. מפעילים את ההגדרה "פרטי אפליקציות מהמכשירים" בחשבון.
  10. פותחים את Google Assistant ומוודאים שההגדרה הושלמה. (בדרך כלל סרגל ההתקדמות של ההגדרה מופיע כסרגל כחול בתחתית המסך, אבל במקרים מסוימים הוא עשוי להיראות אחרת).
  11. כשמשתמשים ב-Google Assistant כדי להפעיל פעולה באפליקציה, חשוב לוודא ששם ההפעלה תואם לתצוגה המקדימה שנוצרה על ידי כלי הבדיקה של פעולות באפליקציה.
  12. כדי למנוע שגיאות בתמלול, נסו להקליד את הטקסט במקום להשתמש בקלט קולי.
  13. מגדירים את גרסת ה-build לבדיקה כך ש-applicationId יתאים בדיוק ל-APK או ל-AAB שהועלו ל-Google Play Console. שימו לב שמאפיינים אופציונליים של applicationIdSuffix יכולים לשנות את ה-applicationId הסופי של גרסאות build של גרסאות מוצר מסוימות ושל וריאנטים build. בדוגמה הזו, הערך של applicationId בגרסת המוצר המדומה הוא com.example.android.architecture.blueprints.master.mock במקום com.example.android.architecture.blueprints.
  14. מגדירים את התצוגה המקדימה כך שתשתמש בשם הפעלה ייחודי. כדאי להשתמש במילה ייחודית כדי להפחית את הסיכויים להתנגשות עם אפליקציות אחרות.
  15. כדי לבודד בעיות כשמנסים לפתור בעיות בבסיס קוד שניתן לשתף, נסו להריץ את האפליקציה לדוגמה "פעולות באפליקציה" של אפליקציית כושר. ודאו שאפליקציית כושר פועלת מקצה לקצה. לאחר מכן, מוסיפים בהדרגה תכונות נוספות לאפליקציה הזו כדי לראות אם אפשר לשחזר את הבעיות.
  16. אם אתם משתמשים בחשבונות G Suite, ודאו ש-Google Assistant מופעלת על ידי האדמין. כדי לעקוף את הבעיה, מומלץ ליצור חשבון בדיקה שאינו חשבון G Suite ולהגדיר אותו כבודק מורשה דרך חנות Play. מהחשבון הזה, הבודקים אמורים להיות מסוגלים ליצור תצוגות מקדימות של האפליקציה שלהם ולבדוק אותה באמצעות החשבון הזה במכשיר שלהם.
  17. אם הורדתם את Google Assistant כאפליקציה נפרדת, נסו לסגור אותה ידנית במכשיר. בדרך כלל אפשר לסגור ידנית אפליקציה דרך ההגדרות של הטלפון.
  18. אם אף אחד מהשלבים האלה לא פותר את הבעיה, אתם יכולים לדווח על הבעיה בIssue Tracker של פעולות באפליקציה.