היכולת להתקשר למספרי חירום היא חיונית למכשירים, כי היא צריכה לפעול למשתמשי Android תוך עמידה בדרישות שונות של ספקי שירותים רגולטוריים ברחבי העולם. מסגרת Android מספקת למשתמשים חוויה מהירה ובטוחה של שיחות חירום.
ב-Android 10 יש תמיכה משופרת בפונקציות של שיחות חירום, בתחזוקה ובעדכונים בפלטפורמת Android המקומית, באמצעות רשימה מפורטת של מספרי חירום מה-SIM, מהרשת, מהמודם וממסד הנתונים. ב-Android 10 יש גם תמיכה בשיחות חירום לפי סוג שירותי החירום, כמו משטרה, מכבי אש או אמבולנס. ב-Android 10 יש תמיכה משופרת במכשירים עם מספרי SIM מרובים, באמצעות שיתוף מספרי החירום מכמה מינויים ב-TelephonyManager API.
בגרסה Android 10 עם Radio HAL 1.4, מצב שיחות החירום טוב יותר בזכות הפרדה בין שיחות חירום משיחות רגילות בממשק HAL, כדי לשפר את נתיב שיחות החירום ולאפשר למכשירים לחייג למספר החירום המתאים שמוגדר במסד הנתונים של Android.
הטמעה
כדי להטמיע את הפונקציות של שיחות חירום ומספרי חירום, צריך להטמיע את ממשקי ה-API הבאים של TelephonyManager
ושל ממשק החומרה.
ממשקי API של טלפוניה
מטמיעים את ממשקי ה-API הבאים:
- מטמיעים את
getEmergencyNumberList
כדי לקבל מספרי חירום תקינים לשיחות חירום על סמך מקור מספרי החירום, כולל האזור, כרטיסי ה-SIM, ברירת המחדל, המודם, מסד הנתונים של Android והרשת. לכל מספר חירום, צריך לציין את קטגוריית שירותי החירום המתאימה, כמו משטרה, אמבולנס וכבאות. - משתמשים ב-
isEmergencyNumber
כדי לזהות אם מספר טלפון הוא מספר חירום. - להשתמש ב-
isPotentialEmergencyNumber
כדי לזהות מספר חירום אם יש לו את אותן ספרות התחלה כמו מספרי החירום.
הערכים של מקורות מספרי החירום הם:
EMERGENCY_NUMBER_SOURCE_NETWORK_SIGNALING
: המספר מגיע מהאות של הרשתEMERGENCY_NUMBER_SOURCE_SIM
: המספר מגיע מכרטיס ה-SIMEMERGENCY_NUMBER_SOURCE_DATABASE
: המספר מגיע ממסד הנתונים שמנוהל על ידי הפלטפורמהEMERGENCY_NUMBER_SOURCE_MODEM_CONFIG
: המספר נלקח מהגדרת המודםEMERGENCY_NUMBER_SOURCE_DEFAULT
: המספר זמין כברירת מחדל. המספרים 112 ו-911 חייבים להיות זמינים תמיד. הערכים 000, 08, 110, 999, 118 ו-119 צריכים להיות זמינים כשאין כרטיס SIM. לפרטים נוספים, ראו סעיף 10: שיחות חירום ב-3GPP TS 22.101.
הערכים בקטגוריות של שירותי החירום הם:
UNSPECIFIED
: שיחת חירום כללית, כל הקטגוריותPOLICE
: משטרהAMBULANCE
: אמבולנסFIRE_BRIGADE
: שירותי כיבוי אשMARINE_GUARD
: Marine GuardMOUNTAIN_RESCUE
: חילוץ בהריםMIEC
: קריאה חירום אלקטרונית (eCall) שהופעל באופן ידני (MIeC)AIEC
: קריאה אוטומטית לעזרה (AIeC)
לפרטים נוספים, ראו סעיף 10: שיחות חירום במאמר 3GPP TS 22.101.
ממשקי API לממשק חומרה
מטמיעים את emergencyDial
ב-IRadio.hal
. מטמיעים את emergencyDialResponse
ב-IRadioResponse.hal
כדי לשלוח תשובה עם סוג התגובה, המספר הסידורי ומידע על השגיאה.
כדי לדווח על רשימת מספרי החירום הנוכחית, מטמיעים את currentEmergencyNumberList
ב-IRadioIndication.hal
. הטמעת האפליקציה EmergencyNumber
ב-types.hal
, שמכילה מידע על מספר החירום, כולל כתובת המספר, קוד המדינה לנייד (MCC), קוד הרשת הסלולרית (MNC), הקטגוריה של שירותי החירום, שם המשאב של האחיזה למקרי חירום (URN) והמקור של מספר החירום.
כדי לציין איך מטפלים בשיחת חירום, משתמשים ב-EmergencyCallRouting
.
אפשר לבקש שיחת חירום באמצעות ניתוב לשיחות חירום או ניתוב לשיחות רגילות, לפי הצורך. אם הערך הוא UNKNOWN
, הניתוב נקבע על סמך ההטמעה.
אימות
כדי לאמת את ההטמעה, מריצים את בדיקות CTS ו-VTS הבאות.
בדיקות CTS
בדיקות VTS
קובצי עזר
למידע נוסף על מפרטים טכניים ותקנים קשורים, ראו:
- 3GPP TS 22.101,קטע 10: שיחות חירום
- 3GPP TS 24.008,קטע 9.2.13.4: רשימת מספרי חירום
- 3GPP TS 23.167, קטע 6: תיאור פונקציונלי
- 3GPP TS 24.503, סעיף 5.1.6.8.1: כללי
- RFC 5031: שם משאב אחיד (URN) לשירותי חירום ולשירותי חירום אחרים