Wi-Fi STA/AP równoległość

Android 9 wprowadza możliwość jednoczesnego działania urządzeń w trybie STA i AP. W przypadku urządzeń obsługujących dwuzakresowe połączenie równoczesne (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

Współbieżność Wi-Fi STA/AP jest obsługiwana w domyślnej strukturze Androida AOSP. Jest ona też obsługiwana przez referencyjną implementację HAL opisaną w sekcji Wi-Fi HAL. Flaga czasu kompilacji WIFI_HIDL_FEATURE_DUAL_INTERFACE opisana w sekcji Implementacja umożliwia specyfikację współbieżności interfejsu, która wskazuje obsługę współbieżną STA i AP.

Implementacja

Aby wdrożyć na urządzeniu jednoczesne działanie Wi-Fi STA/AP:

  1. Włącz flagę czasu kompilacji, aby włączyć obsługę dwóch interfejsów w HAL. Flaga znajduje się w regionie device/<oem>/<device>/BoardConfig-common.mk.

    • WIFI_HIDL_FEATURE_DUAL_INTERFACE := true
  2. udostępniać 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 Współbieżność 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łącz i wyłącz interfejsy STA i AP niezależnie od interfejsu użytkownika.

Jeśli punkt dostępu i stacja są w tej samej podsieci, mogą wystąpić problemy z routingiem na testowanym urządzeniu. Aby uniknąć kolizji, spróbuj przenieść punkt dostępu do innej podsieci.

Niektórzy dostawcy układów Wi-Fi umieszczają radio w trybie współdzielenia czasu, jeśli STA i AP działają w tym samym paśmie, ale na różnych kanałach. Prowadzi to do znacznego spadku skuteczności. Aby rozwiązać ten problem, układ może użyć funkcji unikania zmiany kanału (Channel Switch Avoidance, CSA), która umożliwia:

  • Przenieś punkt dostępu na ten sam kanał co stacja.
  • Przeniesienie punktu dostępu do innego pasma niż stacja