זיהוי הספק

מכשירים עם Android 9 יכולים לזהות מידע על המפעיל של המינוי כדי לספק מזהה ושם של מפעיל. ב-Android יש מסד נתונים של מזהי ספקי סלולר, עם כללי התאמה לכל ספק ולמזהה הייחודי שלו. פרויקט הקוד הפתוח של Android‏ (AOSP) כולל את התוכן של מסד הנתונים של מזהי הספק, בקובץ carrier_list.textpb. מסד הנתונים המאוחד מצמצם את הלוגיקה הכפולה באפליקציות שצריכות לזהות חברות תובלה, ומגביל את החשיפה של מאפיינים שמזהים חברות תובלה.

כדי לשפר את הכיסוי והדיוק של זיהוי הספק, מערכת Android תומכת בעדכונים של טבלאות מזהי ספקים ובעדכונים מחוץ לפס. כל עדכון מגיע עם מספר גרסה ומתפרסם ב-AOSP.

הטמעה

אם רוצים להטמיע עדכונים מחוץ לפס, אפשר להוריד את הקובץ הבינארי carrier_list.pb מ-AOSP. כדי לראות את הטבלה בפורמט קריא, אפשר לעיין במאמר carrier_list.textpb.

ממקמים את טבלת מזהי הספק במחיצת הנתונים /data/misc/carrierid/ של המכשיר. אם הטבלה של מזהה הספק חדשה יותר מהגרסה הקיימת, המכשיר שומר את הטבלה בסיווג של מסד הנתונים של מזהה הספק. המידע העדכני ביותר ממסד הנתונים של מזהי חברות התובלה נאסף על ידי השיטות הציבוריות getSimCarrierId() ו-getSimCarrierIdName().

הוספת מידע על מזהה הספק למסד הנתונים

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

הבקשה נבדקת, ואם היא מאושרת, השינוי מועבר אל בסיס הקוד של AOSP בכתובת carrier_list.pb. אחר כך תוכלו להעתיק את הרשימה המעודכנת ולשלב אותה בגרסה המותאמת אישית שלכם.

שילוב מזהים של ספקים עם CarrierConfig

החל מ-Android 10, הגדרת חברת התובלה תומכת בשימוש במזהי חברות תובלה כמפתחות לאחזור הגדרות ספציפיות לחברת התובלה מ-CarrierService.

לשילוב מזהי ספקי סלולר עם CarrierConfig יש את היתרונות הבאים:

  • מאחד את כל זוגות ה-MCC/MNC של כל ספק למיקום אחד ומסיר נתונים כפולים או לא עקביים.
  • יוצר מזהה קנוני לכל חברת תובלה ומסיר את הדו-משמעות.
  • ההגדרה מאפשרת לזהות מפעילים וירטואליים של רשתות סלולריות (MVNO) באמצעות מזהים נפרדים, במקום להגדיר אותם כחלק ממפעיל רשת סלולרית (MNO).

העברת נתוני ההגדרות למזהי ספק

כדי להעביר נתוני הגדרות מזוגות של חשבונות ניהול/חשבונות רשת לזיהוי חברות תובלה, צריך לפעול לפי השלבים הבאים:

  1. לקבץ את הקבצים carrier_config_mccmnc.xml של אותו ספק. משתמשים ב-carrier_list.textpb כהפניה למיפוי של מידע על MCC,‏ MNC ו-MVNO לספק סלולר מסוים.

  2. ממזגים את ההגדרות לקובץ אחד.

  3. (אופציונלי) ירושת נתונים ממפעילים סלולריים. מפעילים וירטואליים לנייד (MVNO) מקבלים בירושה הגדרות ממפעילים סלולריים (MNO) בקובץ carrier_config_mccmnc.xml מדור קודם. מכיוון שמזהי ספק מאפשרים לכל הספקים, כולל MVNO, להשתמש בקובץ הגדרה ייעודי, מומלץ לכלול נתונים של MNO במהלך ההעברה.

  4. אם ההגדרה של מזהה ספק MVNO לא קיימת, צריך לאחזר את ההגדרה ממזהה ספק ה-MNO באמצעות getCarrierIdFromSimMccMnc.

  5. משנים את השם של הקובץ החדש ל-carrier_config_carrierid_carrierid_carriername.xml, כאשר carrierid צריך להיות זהה ל-canonical_id ו-carriername צריך להיות זהה ל-carrier_name בקובץ carrier_list.textpb.