Voice Interaction Service API מספק הפשטה של אפליקציות שונות לאפשרויות של שליטה קולית. אפשר לפתח הטמעות בהתאם להנחיות שמפורטות במאמר פיתוח אפליקציות. התוכן במדריך השילוב הזה מתאר איך לשלב את האפליקציות האלה בתמונת מערכת ספציפית של Android Automotive OS (AAOS).
טרמינולוגיה
המונחים הבאים מופיעים במדריך הזה:
- נתוני אסיסט. כשמתחילים סשן של אינטראקציה קולית, המערכת יכולה לתעד צפיות וצילומי מסך ולהעביר את המידע הזה לסשן. אפליקציות יכולות לחשוף מידע נוסף על ידי הטמעת
Activity#onProvideAssistData()
ו-Activity#onProvideAssistContent()
. - לחיצה לשיחה (PTT). לחצן פיזי לשליטה קולית, בדרך כלל בגלגל ההגה.
- RecognitionService (RS). שירות זיהוי קול שמשמש אפליקציות דרך ה-API
SpeechRecognizer
. רכיבי VIA חייבים לכלול גם אתVoiceInteractionService
וגם אתRecognitionService
. - הקשה לדיבור (TTT). לחצן לניהול קול בתוכנה, בדרך כלל כחלק מממשק המשתמש של המערכת). ב-Android הפעולה הזו נקראת גם תנועת עזרה.
VoiceInteractionService
. שירות מערכת קל משקל שהוטמע על ידי המפתח של VIA. השירות שנבחר מחויב משירות המערכת בזמן האתחול, והוא תמיד פועל.- VoiceInteractionSession (VIS) הסיווג הזה כולל את הלוגיקה העסקית לאינטראקציה של משתמשים. הוא אחראי להציג למשתמש את סטטוס האינטראקציה הקולית, לטפל בבקשות של VoiceInteractor ולקבל נתונים של עזרה ושל צילומי מסך.
- VoiceInteractionSessionService (VSS). שירות, שהוא חלק מ-VIA, שאחראי לטיפול בסשן של אינטראקציה קולית. השירות הזה קשור לשירות המערכת של Android במהלך אינטראקציה קולית עם משתמש. כל הלוגיקה העסקית של הסשן הזה מיושמת בכיתה
VoiceSession
. השירות הזה מובטח לפעול רק במהלך סשן קול של משתמש יחיד. - אפליקציית אינטראקציה קולית (VIA). אפליקציה ל-Android שמיועדת לשליטה קולית (שנקראת עוזרת). כדי לזהות את האפליקציות האלה, אפשר לכלול את הערך
VoiceInteractionService
במניפסט. אפשר לבחור רק אפליקציה אחת מתוך האפליקציות האלה כברירת המחדל בכל פעם במערכת. רק אפליקציית ברירת המחדל תישאר פעילה (מקושרת משירות מערכת), והיא תהיה המכשיר שמקבל את האירועים של לחיצה לדיבור (PTT) או של הקשה לדיבור (TTT).
תחומי האחריות
בטבלה הזו מתוארות האחריות של כל אחד מהצדדים.
יצרני כלי רכב (OEM) | AOSP | מפתחי אפליקציות |
---|---|---|
|
|
|
דרישות לגבי חוויית המשתמש
יצרני ציוד מקורי אחראים לספק ללקוחות חוויית משתמש טובה. יצרני ציוד מקורי חייבים לוודא שכל שירותי האינטראקציה הקולית המותקנים מראש עומדים בדרישות שמפורטות במאמר עוזרות שהותקנו מראש: הנחיות לגבי חוויית המשתמש.
חוויית Assistant בסיסית
אפליקציית אינטראקציה קולית לכלי רכב (VIA) מבצעת את הפעולות הבאות:
- [חובה] להגיב לטריגרים של אינטראקציה קולית שמנוהלים על ידי המערכת (PTT, TTT).
- [חובה] להציג ייצוג חזותי של ההתקדמות (לדוגמה, האזנה, עיבוד וביצוע).
- [חובה] להשתמש בקול או בצלילים כדי לציין הבנה והשלמה של בקשות המשתמשים.
- [חובה] לשמש ככלי לזיהוי דיבור באפליקציות אחרות (ראו SpeechRecognizer API).
- [צריך] להגיב לטריגר של מילת הפעלה.
- [MAY] הצגת פעילות הגדרות שבה משתמשים יכולים להגדיר את ה-VIA הזה (לדוגמה, הרשאות, הגדרה של מילת הפעלה וכניסה).
- [MAY] טיפול בנתוני Assist (
Intent#ACTION_ASSIST
) - [MAY] תמיכה באינטראקציה קולית ממסך הנעילה.
רכיבים
באופן כללי, אפליקציית אינטראקציה קולית יוצרת אינטראקציה עם הגורמים הבאים:
איור 1. גורמים מעורבים באינטראקציה קולית
פרטים:
VoiceInteractionManagerService
. שירות המערכת הזה אחראי לניהול ה-VIA שמוגדר כברירת מחדל, ולחשיפה של הפונקציונליות שלו לשאר המערכת.RecognitionService
. השירות הזה חושף יכולות של זיהוי דיבור לאפליקציות אחרות במערכת.SoundTrigger
. מיישם ניהול של מילות מפתח חמות, והוא זמין ל-VIA דרך AlwaysOnHotwordDetector.MediaRecorder
. מעניק גישה לקלט אודיו גם לזיהוי מילות מפתח (כשמשתמשים ב-CPU) וגם לזיהוי דיבור.PhoneWindowManager
/CarInputService
. השירותים האלה אחראים (בין היתר) לטיפול באירועים חשובים, ניתוב PTT ל-VIA באמצעותVoiceInteractionManagerService
.User
. המשתמש יוצר אינטראקציה עם VIA באמצעות טריגרים (PTT, TTT, Hotword) או באמצעות ממשק המשתמש של Voice Plate.- CarService, Notifications, Media, טלפוניה, ContactsProvider וכו'. שירותים ואפליקציות שבהם משתמש VoiceInteractionSession כדי לבצע את הפקודות של המשתמש.
מושגים ספציפיים לכלי רכב
יש הבדל בין AAOS לבין Android בהיבטים הבאים:
- בנוסף לפונקציות הרגילות של Assistant, אפליקציות AAOS VIA יכולות לשלוט בפונקציות של הרכב (לדוגמה: בקרת אקלים, מושבים ותאורה פנימית). אפשר לשלב את הפונקציות האלה באמצעות CarPropertyManager API (מידע נוסף זמין במאמר קריאת מאפיין של רכב), בתנאי שיצרני ציוד מקורי מגדירים את הגישה בצורה נכונה כפי שמתואר במאמר הוספה לרשימת ההיתרים של הרשאות עם הרשאות.
- התאמה אישית ועקביות רלוונטיות יותר לתחום הרכב מאשר לכל גורם צורה אחר. מידע נוסף על הטמעת ההנחיות האלה זמין במאמר התאמה אישית.