Устройства с Android 10 или более поздней версии могут поддерживать неавтономную архитектуру 5G (NSA). 5G NSA – это решение для сетей 5G, которые поддерживаются существующей инфраструктурой 4G. В Android 10 на устройствах может отображаться значок 5G в строке состояния, когда устройство подключено к сети 5G.
Реализация
В этом разделе рассказывается, как реализовать поддержку 5G NSA на устройствах Android, включая конфигурацию оператора и интеграцию системного интерфейса.
Настройка оператора
Чтобы настроить отображение значков 5G в строке состояния, операторы могут использовать ключ KEY_5G_ICON_CONFIGURATION_STRING в файле CarrierConfig.
В 5G NSA доступны следующие сценарии:
- Устройство подключено к сети 5G в качестве дополнительной ячейки и использует миллиметровые волны.
- Устройство подключено к ячейке 5G в качестве вторичной, но не использует миллиметровые волны.
- Устройство находится в сети с поддержкой 5G (необязательно подключено к соте 5G в качестве дополнительной), использование 5G не ограничено, а управление радиоресурсами (RRC) находится в состоянии
IDLE(нет подключения). - Устройство подключено к сети с поддержкой 5G (при этом оно не обязательно должно быть подключено к ячейке 5G в качестве дополнительной ячейки), использование 5G не ограничено, а управление радиоресурсами (RRC) находится в состоянии
CONNECTED. - Устройство подключено к сети с поддержкой 5G (при этом оно не обязательно должно быть подключено к сети 5G в качестве дополнительной ячейки), но использование 5G ограничено.
Строка конфигурации содержит несколько пар "ключ-значение", разделенных запятыми. В каждой паре ключ и значение разделены двоеточием. Ключи в строке конфигурации соответствуют сценариям 5G, описанным в предыдущем списке, и должны быть одним из следующих:
connected_mmwaveconnectednot_restricted_rrc_idlenot_restricted_rrc_conrestricted
Значения в строке конфигурации должны быть действительными названиями значков, которые совпадают с названиями значков в каталоге /packages/SettingsLib/res/. Для 5G NSA доступны два значка по умолчанию: 5G и 5G_PLUS.
Значки 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.