В Android 9 появилась возможность одновременной работы устройств в режимах STA и AP. Для устройств, поддерживающих двухдиапазонную одновременную работу (DBS), эта функция открывает новые возможности, например, позволяет не прерывать работу Wi-Fi в режиме STA, когда пользователь хочет включить точку доступа (softAP).
Примеры и источник
Поддержка одновременной работы Wi-Fi STA/AP реализована в стандартном коде фреймворка AOSP Android. Она также поддерживается эталонной реализацией HAL, описанной в разделе Wi-Fi HAL . Флаг сборки WIFI_HIDL_FEATURE_DUAL_INTERFACE описанный в разделе «Реализация» , включает спецификацию одновременной работы интерфейса, указывающую на одновременную поддержку STA и AP.
Выполнение
Для реализации одновременной работы Wi-Fi STA/AP на вашем устройстве выполните следующие действия:
- Включите флаг, активируемый во время сборки, чтобы разрешить поддержку двух интерфейсов в HAL. Этот флаг находится в
device/<oem>/<device>/BoardConfig-common.mk.-
WIFI_HIDL_FEATURE_DUAL_INTERFACE := true
-
- Предоставить доступ к двум сетевым интерфейсам:
-
wlan0 -
wlan1
-
Флаг WIFI_HIDL_FEATURE_DUAL_INTERFACE игнорируется, если указан флаг WIFI_HAL_INTERFACE_COMBINATIONS . Для получения дополнительной информации см. раздел «Параллельная работа нескольких интерфейсов Wi-Fi» .
Валидация
Чтобы убедиться в корректной работе функции, проведите ручное тестирование.
Для ручной проверки этой функции включите и выключите интерфейсы STA и AP независимо друг от друга через пользовательский интерфейс.
Если точка доступа (AP) и станция (STA) находятся в одной подсети, могут возникнуть проблемы с маршрутизацией на тестируемом устройстве (DUT). Чтобы избежать конфликтов, попробуйте переместить точку доступа в другую подсеть.
Некоторые производители Wi-Fi-чипов переводят радиомодуль в режим разделения времени, если станция и точка доступа находятся в одном диапазоне, но на разных каналах. Это приводит к значительному снижению производительности. Для решения этой проблемы чип может использовать механизм предотвращения переключения каналов (CSA), который позволяет либо:
- Переключите точку доступа на тот же канал, что и станция.
- Переключите точку доступа на другой диапазон, отличный от диапазона станции.