Android 9 wprowadza możliwość jednoczesnego działania urządzeń w trybie STA i AP. W przypadku urządzeń obsługujących jednoczesne działanie w dwóch pasmach (DBS) ta funkcja otwiera nowe możliwości, takie jak brak zakłóceń w działaniu Wi-Fi STA, gdy użytkownik chce włączyć hotspot (softAP).
Przykłady i źródło
Jednoczesne działanie Wi-Fi STA i AP jest obsługiwane w domyślnym kodzie platformy AOSP Android. Jest ono też obsługiwane przez implementację HAL opisaną w
Wi-Fi HAL. Flaga czasu kompilacji
WIFI_HIDL_FEATURE_DUAL_INTERFACE opisana w
sekcji Implementacja umożliwia określenie jednoczesnego działania interfejsów,
co oznacza jednoczesną obsługę STA i AP.
Implementacja
Aby zaimplementować jednoczesne działanie Wi-Fi STA i AP na urządzeniu:
- Włącz flagę czasu kompilacji, aby włączyć obsługę 2 interfejsów w HAL.
Flaga znajduje się w
device/<oem>/<device>/BoardConfig-common.mk.WIFI_HIDL_FEATURE_DUAL_INTERFACE := true
- Udostępnij 2 interfejsy sieci:
wlan0wlan1
Flaga WIFI_HIDL_FEATURE_DUAL_INTERFACE jest ignorowana, jeśli określono flagę WIFI_HAL_INTERFACE_COMBINATIONS. Więcej informacji znajdziesz w artykule
Jednoczesne działanie wielu interfejsów Wi-Fi.
Weryfikacja
Aby sprawdzić, czy funkcja działa zgodnie z oczekiwaniami, przeprowadź test ręczny.
Aby ręcznie sprawdzić tę funkcję, włączaj i wyłączaj interfejsy STA i AP niezależnie od interfejsu.
Jeśli AP i STA znajdują się w tej samej podsieci, mogą wystąpić problemy z routingiem na testowanym urządzeniu. Aby uniknąć kolizji, spróbuj przenieść AP do innej podsieci.
Niektórzy dostawcy układów Wi-Fi umieszczają radio w trybie współdzielenia czasu, jeśli STA i AP znajdują się w tym samym paśmie, ale na różnych kanałach. Prowadzi to do znacznego spadku wydajności. Aby rozwiązać ten problem, układ może używać funkcji unikania przełączania kanałów (CSA), aby:
- przenieść AP na ten sam kanał co STA,
- przenieść AP do innego pasma niż STA.