В Android 12 или более поздней версии производители устройств могут дополнительно использовать упрощенный интерфейс подключения, который помогает пользователям лучше понимать свои сетевые подключения, переключаться между интернет-провайдерами и устранять проблемы с сетевым подключением. Эти изменения в пользовательском интерфейсе по сравнению с Android 11 или более ранней версией отражены в пользовательском интерфейсе, значках и изменениях API для быстрых настроек и настроек. Все эти изменения доступны в AOSP для производителей устройств, которые можно включить как есть или настроить.
Обзор упрощенного подключения
В этом разделе описаны основные изменения пользовательского интерфейса упрощенного подключения в AOSP, начиная с Android 12.
Плитка Интернета в быстрых настройках
Меню быстрых настроек включает в себя плитку Интернета, которая открывает панель Интернета, где пользователи могут переключаться между Wi-Fi и сотовой связью. Плитка «Интернет» объединяет плитки Wi-Fi и «Мобильные данные», используемые в Android 11 или более ранних версиях.
Рисунок 1. Плитка Интернет в быстрых настройках
Раздел «Звонки и SMS» в настройках.
Приложение «Настройки» включает раздел «Звонки и SMS» в разделе «Сеть и Интернет» , в котором отображается состояние доступности и параметры вызовов по Wi-Fi.
Рисунок 2. Раздел «Звонки и SMS» в настройках.
Кнопка сброса в настройках
В приложении «Настройки» в разделе «Сеть и Интернет» > «Интернет» есть кнопка сброса , которая позволяет пользователям сбрасывать настройки телефонии и модемов Wi-Fi на устройстве, что может быть полезно при устранении проблем с сетевым подключением.
Рис. 3. Кнопка сброса для устранения проблем с подключением.
Выполнение
Чтобы включить упрощенный интерфейс подключения на вашем устройстве, используйте следующий флаг глобальных настроек:
- Имя:
persist.sys.fflag.override.settings_provider_model
- Тип: Логический
- Значение: установите значение
true
, чтобы включить поведение упрощения подключения, иfalse
, чтобы отключить его и использовать устаревшее поведение. Начиная с Android 12, кодовый путь дляfalse
больше не поддерживается активно.
Дополнительно вы можете настроить следующие режимы пользовательского интерфейса для отдельных операторов связи с помощью конфигурации оператора связи . Ключи конфигурации:
-
CarrierConfigManager#KEY_CARRIER_PROVISIONS_WIFI_MERGED_NETWORKS_BOOL
: логическое значение, указывающее, настраивает ли оператор сети Wi-Fi, которые являются частью его базовой сети и отображаются как часть мобильной сети. Это работает в тандеме с методомWifiNetworkSuggestion.Builder#setCarrierMerged(booleanisCarrierMerged)
. -
CarrierConfigManager#KEY_USE_IP_FOR_CALLING_INDICATOR_BOOL
: логическое значение, указывающее, используется ли подключение к сети передачи данных (IP) в качестве дополнительного условия для отображения значка отсутствия вызова . -
CarrierConfigManager#KEY_DISPLAY_CALL_STRENGTH_INDICATOR_BOOL
: логическое значение, указывающее, отображается ли значок мощности вызова в пользовательском интерфейсе системы.
API-интерфейсы платформы
Чтобы временно отключить близлежащие сети Wi-Fi, используйте следующие API:
-
WifiManager#startRestrictingAutoJoinToSubscriptionId(int subscriptionId)
: позволяет пользователю выбирать сеть оператора связи, не отключая Wi-Fi. Отключает все видимые сети Wi-Fi минимум на 30 минут (управляется с помощью наложенияconfig_wifiAllNonCarrierMergedWifiMinDisableDurationMinutes
) и на максимальную продолжительность 6 часов (управляется наложениемconfig_wifiAllNonCarrierMergedWifiMaxDisableDurationMinutes
). Сети Wi-Fi повторно включаются при переключении Wi-Fi, перезагружании устройства, если пользователь выбирает сеть Wi-Fi (в этом случае APIstopRestrictingAutoJoinToSubscriptionId()
выполняется в настройках) или если сеть не видна в течение 60 минут. -
WifiManager#stopRestrictingAutoJoinToSubscriptionId()
: восстанавливает нормальную работу.
Для поддержки кнопки сброса и пользовательского интерфейса устранения неполадок, который реализован в классе com.android.settingslib.connectivity.ConnectivitySubsystemsRecoveryManager
, используйте следующие API:
-
WifiManager#restartWifiSubsystem(String reason)
: перезапускает подсистему Wi-Fi. -
TelephonyManager#rebootRadio()
: Сбрасывает радиомодем.
Работайте с несколькими операторами связи
Если вы используете упрощенный интерфейс подключения для определенных операторов связи, но не для других, имейте в виду сценарий с несколькими SIM-картами, когда пользователь использует две SIM-карты: одну от партнера-оператора, который выбрал изменения пользовательского интерфейса, а другую — нет. В этом сценарии обязательно решите, какой пользовательский интерфейс видят пользователи, и тщательно протестируйте его поведение на своих устройствах.
,В Android 12 или более поздней версии производители устройств могут дополнительно использовать упрощенный интерфейс подключения, который помогает пользователям лучше понимать свои сетевые подключения, переключаться между интернет-провайдерами и устранять проблемы с сетевым подключением. Эти изменения в пользовательском интерфейсе по сравнению с Android 11 или более ранней версией отражены в пользовательском интерфейсе, значках и изменениях API для быстрых настроек и настроек. Все эти изменения доступны в AOSP для производителей устройств, которые можно включить как есть или настроить.
Обзор упрощенного подключения
В этом разделе описаны основные изменения пользовательского интерфейса упрощенного подключения в AOSP, начиная с Android 12.
Плитка Интернета в быстрых настройках
Меню быстрых настроек включает в себя плитку Интернета, которая открывает панель Интернета, где пользователи могут переключаться между Wi-Fi и сотовой связью. Плитка «Интернет» объединяет плитки Wi-Fi и «Мобильные данные», используемые в Android 11 или более ранних версиях.
Рисунок 1. Плитка Интернет в быстрых настройках
Раздел «Звонки и SMS» в настройках.
Приложение «Настройки» включает раздел «Звонки и SMS» в разделе «Сеть и Интернет» , в котором отображается состояние доступности и параметры вызовов по Wi-Fi.
Рисунок 2. Раздел «Звонки и SMS» в настройках.
Кнопка сброса в настройках
В приложении «Настройки» в разделе «Сеть и Интернет» > «Интернет» есть кнопка сброса , которая позволяет пользователям сбрасывать настройки телефонии и модемов Wi-Fi на устройстве, что может быть полезно при устранении проблем с сетевым подключением.
Рис. 3. Кнопка сброса для устранения проблем с подключением.
Выполнение
Чтобы включить упрощенный интерфейс подключения на вашем устройстве, используйте следующий флаг глобальных настроек:
- Имя:
persist.sys.fflag.override.settings_provider_model
- Тип: Логический
- Значение: установите значение
true
, чтобы включить поведение упрощения подключения, иfalse
, чтобы отключить его и использовать устаревшее поведение. Начиная с Android 12, кодовый путь дляfalse
больше не поддерживается активно.
Дополнительно вы можете настроить следующие режимы пользовательского интерфейса для отдельных операторов связи с помощью конфигурации оператора связи . Ключи конфигурации:
-
CarrierConfigManager#KEY_CARRIER_PROVISIONS_WIFI_MERGED_NETWORKS_BOOL
: логическое значение, указывающее, настраивает ли оператор сети Wi-Fi, которые являются частью его базовой сети и отображаются как часть мобильной сети. Это работает в тандеме с методомWifiNetworkSuggestion.Builder#setCarrierMerged(booleanisCarrierMerged)
. -
CarrierConfigManager#KEY_USE_IP_FOR_CALLING_INDICATOR_BOOL
: логическое значение, указывающее, используется ли подключение к сети передачи данных (IP) в качестве дополнительного условия для отображения значка отсутствия вызова . -
CarrierConfigManager#KEY_DISPLAY_CALL_STRENGTH_INDICATOR_BOOL
: логическое значение, указывающее, отображается ли значок мощности вызова в пользовательском интерфейсе системы.
API-интерфейсы платформы
Чтобы временно отключить близлежащие сети Wi-Fi, используйте следующие API:
-
WifiManager#startRestrictingAutoJoinToSubscriptionId(int subscriptionId)
: позволяет пользователю выбирать сеть оператора связи, не отключая Wi-Fi. Отключает все видимые сети Wi-Fi минимум на 30 минут (управляется с помощью наложенияconfig_wifiAllNonCarrierMergedWifiMinDisableDurationMinutes
) и на максимальную продолжительность 6 часов (управляется наложениемconfig_wifiAllNonCarrierMergedWifiMaxDisableDurationMinutes
). Сети Wi-Fi повторно включаются при переключении Wi-Fi, перезагружании устройства, если пользователь выбирает сеть Wi-Fi (в этом случае APIstopRestrictingAutoJoinToSubscriptionId()
выполняется в настройках) или если сеть не видна в течение 60 минут. -
WifiManager#stopRestrictingAutoJoinToSubscriptionId()
: восстанавливает нормальную работу.
Для поддержки кнопки сброса и пользовательского интерфейса устранения неполадок, который реализован в классе com.android.settingslib.connectivity.ConnectivitySubsystemsRecoveryManager
, используйте следующие API:
-
WifiManager#restartWifiSubsystem(String reason)
: перезапускает подсистему Wi-Fi. -
TelephonyManager#rebootRadio()
: Сбрасывает радиомодем.
Работайте с несколькими операторами связи
Если вы используете упрощенный интерфейс подключения для определенных операторов связи, но не для других, имейте в виду сценарий с несколькими SIM-картами, когда пользователь использует две SIM-карты: одну от партнера-оператора, который выбрал изменения пользовательского интерфейса, а другую — нет. В этом сценарии обязательно решите, какой пользовательский интерфейс видят пользователи, и тщательно протестируйте его поведение на своих устройствах.