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 silnikowymDEVICE_MOBILITY_STATE_LOW_MVMT
: Spacer lub bieganieDEVICE_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.