ב-Android 10, שירות ההצעות לחשבון טלפון מאפשר להציג למשתמשים הצעות לחשבונות טלפון כשהם מבצעים שיחה. לדוגמה, אם למשתמש יש מכשיר עם כמה כרטיסי SIM והוא נהנה מתעריפים נמוכים יותר לשיחות בתוך הרשת, השירות הזה מזהה קודם את הספק של מי שמתקשרים אליו ואז מציע להשתמש בכרטיס ה-SIM באותה רשת של מי שמתקשרים אליו.
שירות הצעות לחשבון טלפון הוא אופציונלי, ואפשר להטמיע אותו במכשירים עם Android מגרסה 10 ואילך.
הטמעה
כדי להטמיע הצעות לחשבון טלפון, צריך להטמיע שירות אחד
PhoneAccountSuggestionService
באפליקציה שנמצאת ב-/system/priv-app/. השירות לא נשאל אם מיושם יותר מ-PhoneAccountSuggestionServiceאחד. השירות צריך להצהיר על ההרשאה android.Manifest.permission.BIND_PHONE_ACCOUNT_SUGGESTION_SERVICE.
כשמשתמש מבצע שיחה יוצאת ולא מוגדר עבור הנמען חשבון הטלפון היוצא כברירת מחדל או חשבון הטלפון המועדף, שירות הטלקום מתחבר אל PhoneAccountSuggestionService כדי לאסוף מידע על החשבונות, מתבצעת קריאה אל onAccountSuggestionRequest(String number) ותהליך השיחה היוצאת מושהה.
הפונקציה PhoneAccountSuggestionService חייבת להפעיל את suggestPhoneAccounts(String number, List<PhoneAccountSuggestion> suggestions) עם המספר שמוחזר על ידי onAccountSuggestionRequest(String number).
כשמבצעים קריאה ל-suggestPhoneAccounts(String number, List<PhoneAccountSuggestion> suggestions), שירות הטלקום מחזיר רשימה של חשבונות טלפון מוצעים. אחרי כן, אפליקציית החייגן צריכה להציג למשתמש את רשימת החשבונות הטלפוניים המוצעים כדי שיוכל לבחור מתוכם את החשבון שממנו יתבצעו השיחות.
PhoneAccountSuggestion
כדי להציע הצעות, משתמשים במחלקה PhoneAccountSuggestion.
לדוגמה, אם השירות קובע שמקבל הקריאה החוזרת משתמש באותו ספק כמו אחד מכרטיסי ה-SIM במכשיר, השירות צריך לסמן את חשבון הטלפון בערך REASON_INTRA_CARRIER.
אחרי כן, המידע הזה יכול להיות מועבר למשתמש בממשק של חיוג השיחות.
לדוגמה, אם המשתמש הגדיר במכשיר שימוש בכרטיס SIM של העבודה לכל אנשי הקשר בחשבון Google של מקום עבודה, השירות צריך לסמן את חשבון הטלפון בסימן REASON_USER_SET ולהגדיר את shouldAutoSelect כ-TRUE כדי לאפשר לחייגן לדלג על תיבת הדו-שיח לבחירה ולבצע את השיחה באופן אוטומטי באמצעות חשבון הטלפון.
מידע על הצעות אחרות זמין במאמר PhoneAccountSuggestion.
Dialer
כשהשיחה עוברת למצב STATE_SELECT_PHONE_ACCOUNT, מערכת החיוג צריכה להשתמש במידע מ-PhoneAccountSuggestion כדי לטפל ב-EXTRA_SUGGESTED_PHONE_ACCOUNTS.
השבתת השירות
כדי להתאים אישית את ההטמעה לחברות תובלה ספציפיות, אפשר להפעיל או להשבית את השירות באמצעות setComponentEnabledSetting.
אם השירות מושבת, לא מתבצעת לגביו שאילתה.
הטמעה של ממשק המשתמש של המערכת
יכול להיות שיהיה צורך לבצע שינויים בממשק המשתמש של המערכת, בהתאם להטמעה שלכם. לדוגמה, כדי לאפשר למשתמשים לציין שכל השיחות לאיש קשר מסוים יתבצעו מחשבון טלפון ספציפי, צריך להטמיע תהליך הגדרה מותאם אישית וממשק משתמש להגדרות במכשיר.
אימות
כדי לאמת את ההטמעה, מריצים את בדיקות ה-CTS הבאות: