5G לא עצמאי (NSA)

מכשירים עם Android מגרסה 10 ואילך יכולים לתמוך ב-5G לא עצמאי (NSA). ‫5G NSA הוא פתרון לרשתות 5G שנתמכות על ידי תשתית 4G קיימת. ב-Android 10, מכשירים יכולים להציג סמל 5G בשורת הסטטוס כשהמכשיר מתחבר לרשת 5G.

הטמעה

בקטע הזה מוסבר איך להטמיע תמיכה ב-5G NSA במכשירי Android, כולל הגדרת הספק ושילוב ממשק המשתמש של המערכת.

תצורת ספק

כדי להגדיר איך סמלי 5G מוצגים בשורת הסטטוס, ספקי הסלולר יכולים להשתמש במפתח KEY_5G_ICON_CONFIGURATION_STRING ב-CarrierConfig.

התרחישים האלה זמינים ב-5G NSA:

  1. המכשיר מחובר לתא 5G כתא המשני ומשתמש בגלי מילימטר.
  2. המכשיר מחובר לתא 5G כתא משני, אבל לא משתמש בגלי מילימטר.
  3. המכשיר מחובר לרשת עם יכולת 5G (המכשיר לא צריך להיות מחובר לתא 5G כתא משני), השימוש ב-5G לא מוגבל והשליטה במשאבי הרדיו (RRC) היא במצב IDLE (אין חיבור).
  4. המכשיר מחובר לרשת עם יכולת 5G (המכשיר לא צריך להיות מחובר לתא 5G כתא משני), השימוש ב-5G לא מוגבל והבקרה על משאבי הרדיו (RRC) היא במצב CONNECTED.
  5. המכשיר מחובר לרשת עם יכולת 5G (המכשיר לא צריך להיות מחובר לתא 5G כתא משני), אבל השימוש ב-5G מוגבל.

מחרוזת ההגדרה מכילה כמה צמדי מפתח-ערך שמופרדים בפסיקים. בכל זוג, המפתח והערך מופרדים באמצעות נקודתיים. המפתחות במחרוזת ההגדרה תואמים לתרחישי השימוש ב-5G שמתוארים ברשימה שלמעלה, והם חייבים להיות אחד מהערכים הבאים:

  1. connected_mmwave
  2. connected
  3. not_restricted_rrc_idle
  4. not_restricted_rrc_con
  5. restricted

הערכים במחרוזת ההגדרה צריכים להיות שמות חוקיים של סמלים, שזהים לשמות של הסמלים בספרייה /packages/SettingsLib/res/. יש שני סמלי ברירת מחדל ל-5G NSA: ‏ 5G ו-5G_PLUS.

סמלים של 5G NSA

הצגת סמלי 5G רק בתרחיש 1 (connected_mmwave) ובתרחיש 2 (connected), שבהם למכשיר יש חיבור 5G אמיתי. משתמשים בסמל 5G_PLUS לתרחיש 1 ובסמל 5G לתרחיש 2. הדוגמה הבאה מציגה מחרוזת הגדרה ב-CarrierConfig.

connected_mmwave:5G_PLUS,connected:5G

ממשק משתמש של המערכת

כדי להתאים אישית את הסמלים שחברות תובלה יכולות להשתמש בהם לסטטוס מסוים, מוסיפים אובייקט MobileIconGroup ב-TelephonyIcons.java. השם של הסמל ב-MobileIconGroup צריך להיות זהה לשם של הסמל שמופיע ב-CarrierConfig. בדוגמה הבאה אפשר לראות איך מוסיפים ל-MobileIconGroup סמל מותאם אישית עם השם 5G_PLUS.

static final MobileIconGroup NR_5G_PLUS = new MobileIconGroup(
            "5G_PLUS",
            null,
            null,
            AccessibilityContentDescriptions.PHONE_SIGNAL_STRENGTH,
            0,
            0,
            0,
            0,

AccessibilityContentDescriptions.PHONE_SIGNAL_STRENGTH[0],
            R.string.data_connection_5g_plus,
            TelephonyIcons.ICON_5G_PLUS,
            true);

אימות

כדי לוודא שההטמעה תקינה, צריך לוודא שהסמל 5G מוצג בשורת הסטטוס כשהמכשיר מחובר לתא 5G.