В Android 12 появилась функция одновременной работы точек доступа Wi-Fi, которая позволяет устройству создавать два интерфейса точек доступа. Эта функция позволяет устройству поддерживать режим модема через точку доступа Wi-Fi с одновременной работой в двух диапазонах (DBS). Подробнее о поддержке режима модема через одну точку доступа Wi-Fi можно узнать в статье Точка доступа Wi-Fi (программная точка доступа).
На этой странице описано, как работает устройство, когда эта функция включена, и приведены сведения о ее реализации для производителей и поставщиков устройств.
Принцип работы
Если поддерживается параллельная работа двух точек доступа Wi-Fi, устройство может создать два интерфейса точек доступа, например один в диапазоне 2,4 ГГц, а другой – в диапазоне 5 ГГц. После этого клиенты могут подключаться к каждому из интерфейсов точек доступа.
HAL Wi-Fi создает единый мостовой интерфейс с двумя интерфейсами ТД и предоставляет его стеку Wi-Fi и стеку подключения, когда стек включает программную точку доступа. После включения программной точки доступа HAL Wi-Fi указывает, что доступны два интерфейса, и обновляет информацию (например, рабочий канал, пропускную способность и BSSID) для каждой точки доступа.
Для экономии энергии фреймворк отключает неиспользуемую точку доступа (2,4, 5 или 6 ГГц) после периода бездействия. Фреймворк считает точку доступа неактивной, если к ней не подключен ни один клиент. Вы можете настроить продолжительность этого периода неактивности. Подробнее о том, как настроить период неактивности…
Устройства поддерживают одновременную работу точки доступа Wi-Fi и точки доступа, используя одну из следующих конфигураций моста для программной точки доступа:
- Настройка двух диапазонов (канал выбирается автоматически фреймворком или драйвером)
- Настройка двух каналов на двухдиапазонной ТД
Требования
Чтобы реализовать одновременную работу точек доступа Wi-Fi, устройства должны соответствовать следующим требованиям:
Чип Wi-Fi или встроенное ПО должны поддерживать два одновременных подключения к точке доступа. Прошивка должна поддерживать все комбинации каналов и диапазонов для обоих подключений. Чтобы избежать проблем с производительностью, рекомендуем использовать чип Wi-Fi с поддержкой DBS 2x2+2x2.
Устройство должно поддерживать следующие методы в Wi-Fi Vendor HAL:
IWifiChip.createBridgedApIface()IWifiChip.removeIfaceInstanceFromBridgedApIface()IWifiApIface.resetToFactoryMacAddress()IWifiApIface.getBridgedInstances()
Реализация
Чтобы реализовать одновременную работу ТД Wi-Fi, выполните следующие действия:
Включите хотя бы одну из следующих функций (по умолчанию они отключены), используя переопределение ресурсов во время выполнения:
config_wifiBridgedSoftApSupported: поддерживает несколько точек доступа, объединенных в мост.config_wifiStaWithBridgedSoftApConcurrencySupported: поддерживает одновременное подключение станции (STA) и нескольких мостов AP.
На устройствах, использующих AIDL Wi-Fi HAL или HIDL Wi-Fi HAL 1.6, определите
AP_BRIDGEDв комбинации интерфейсов Wi-Fi HAL. Подробнее о многоинтерфейсном режиме Wi-Fi…Настройте конфигурацию мягкой точки доступа с мостом, вызвав один из следующих методов:
Зарегистрируйте обратный вызов, чтобы получить возможности устройства с помощью
WifiManager#registerSoftApCallback.SoftApCallbackпредоставляет следующие методы для конфигурации точки доступа с мостом:SoftApCallback#onInfoChanged- Предоставляет информацию о работающих экземплярах программных точек доступа.
SoftApCallback#onConnectedClientsChanged- Предоставляет список подключенных клиентов для экземпляра точки доступа.
Как настроить период отсутствия активности
Чтобы настроить продолжительность периода бездействия, задайте следующие параметры наложения, которые можно найти в разделе packages/modules/Wifi/service/ServiceWifiResources/res/values/config.xml:
config_wifiFrameworkSoftApShutDownIdleInstanceInBridgedModeTimeoutMillisecond- Интервал времени ожидания завершения работы по умолчанию. Действительно, только если включено правило
SoftApConfiguration#setBridgedModeOpportunisticShutdownEnabled. - (доступно с 13 лет)
config_wifiFrameworkSoftApDisableBridgedModeShutdownIdleInstanceWhenCharging- Указывает, следует ли отключать таймер отключения при бездействии во время зарядки.