Skanowanie odciążania sieci preferowanej Wi-Fi

Skanowanie Wi-Fi z odciążaniem sieci (PNO) to skanowanie Wi-Fi o niskim potencjale, występują w regularnych odstępach czasu, gdy urządzenie jest odłączone od Wi-Fi, ekran jest wyłączony. Skanowanie PNO jest wykorzystywane do łączyć się z zapisanymi sieciami. Skanowanie jest zaplanowane przez platformę za pomocą NL80211_CMD_START_SCHED_SCAN. Więcej informacji: nl80211.h

Optymalizuj zużycie energii dzięki informacjom o mobilności urządzeń

Na urządzeniach z Androidem 9 lub starszym, gdy jest rozłączony z Wi-Fi, a ekran jest wyłączony, skanowanie PNO odbywa się po 20 sekundach między pierwszymi 3 skanowaniami, a następnie zwolnij do 1 skanowania co 60 sekund podczas wszystkich kolejnych skanowań. Skanowanie PNO jest zatrzymywane po znalezieniu zapisanej sieci lub ekran jest włączony.

Android 10 wprowadza opcjonalną metodę interfejsu API o nazwie setDeviceMobilityState() w WifiManager, który zwiększa odstęp między Skanowanie PNO na podstawie stanu mobilności urządzenia w celu zmniejszenia zużycia energii.

Możliwe stany mobilności:

  • DEVICE_MOBILITY_STATE_UNKNOWN: Nieznana mobilność
  • DEVICE_MOBILITY_STATE_HIGH_MVMT: Na rowerze lub pojeździe silnikowym
  • DEVICE_MOBILITY_STATE_LOW_MVMT: Spacer lub bieganie
  • DEVICE_MOBILITY_STATE_STATIONARY: Brak ruchu

Jeśli urządzenie jest nieruchome, platforma Androida zwiększa odstęp między skanowaniami PNO od 60 do 180 sekund w celu zmniejszenia zużycia energii konsumpcją treści. Optymalizację przyjęto przy założeniu, że urządzenie gdy urządzenie nie jest w ruchu, raczej nie znajduje nowych sieci podczas skanowania PNO.

Jeśli urządzenie jest w dowolnym innym stanie mobilności lub metoda nie została wywołana, na urządzeniu jest używane domyślne zachowanie skanowania PNO.

Implementacja

Aby wdrożyć tę funkcję optymalizacji energii na urządzeniu z Androidem 10 lub wyższe, czerpanie informacji o mobilności urządzenia i wywołaj metodę setDeviceMobilityState() z niestandardowej aplikacji systemowej.