2016-04-07 15 views
6

w Androidzie 6.0+ zakładając użytkownik opuścił androida gdzieś, unplugged, przycisk zasilania wciśnięty, aby go zablokować etc ..jak długo trwa przejście androida do trybu drzemki?

Ile czasu spędzasz w android każdego stanu, takich jak nieaktywne, bezczynnie w oczekiwaniu etc przed nim wreszcie wpada w bezczynność?

Czy w trybie bezczynności wystarczy czas, aby przejść w tryb bezczynności i jak długo pozostanie w trybie bezczynności?

Czy te wartości stałe lub konfigurowalne lub zależne od wersji Androida/producenta ..

Proszę doradzić, to jest dla mnie ważne, aby podjąć ważne decyzje o tym, jak dostosować moją aplikację dla systemu Android w wersji 6.0/api 23+

+2

To samo pytanie. Ponieważ bardzo trudne jest sprawdzenie, jak nasza aplikacja będzie się zachowywać w trybie drzemki i jak poradzić sobie z tą sytuacją. – Smeet

Odpowiedz

1

Nie powinieneś zajmować się , gdy urządzenie wchodzi w tryb drzemki, a raczej z jak zachowuje się moja aplikacja, gdy telefon jest w trybie drzemki. Aby to sprawdzić, wystarczy zmusić telefon do drzemki i przestrzegać swojej aplikacji zachowanie:

$ adb version 
Android Debug Bridge version 1.0.32 
Revision eac51f2bb6a8-android 
$ adb shell dumpsys deviceidle | grep mState 
    mState=ACTIVE 
$ adb shell dumpsys deviceidle force-idle 
Now forced in to idle mode 
$ adb shell dumpsys deviceidle | grep mState 
    mState=IDLE 

Jeszcze lepiej, należy przetestować aplikację w każdych różnych pre-drzemać stanów:

$ adb shell dumpsys deviceidle step 
Stepped to: ACTIVE 
$ adb shell dumpsys battery unplug # emulate unplugging the charging cable 
$ for i in {1..5}; do adb shell dumpsys deviceidle step; done 
Stepped to: IDLE_PENDING 
Stepped to: SENSING 
Stepped to: LOCATING 
Stepped to: IDLE 
Stepped to: IDLE_MAINTENANCE 
# repeats IDLE and IDLE_MAINTENANCE forever 
$ adb shell dumpsys battery reset 
$ adb shell dumpsys deviceidle step 
Stepped to: ACTIVE 

Powinieneś przetestować swoją aplikację we wszystkich powyższych stanach, aby zapewnić poprawne działanie. Zobacz także official documentation.


Teraz, jeśli nalegać na znając parametry drzemki i konserwacji, należy zapoznać się z pełną moc adb shell dumpsys deviceidle. Gdy urządzenie jest IDLE, pod koniec wyjściu widać:

mNextAlarmTime=+59m35s863ms 

która wywodzi się z:

idle_to=+60m0s0ms 

Ponadto, jeżeli telefon jest budzony przez użytkownika, następny limit czasu bezczynności będzie większy, wpływ tego parametru:

mNextIdleDelay=+2h0m0s0ms 

itd. Jestem świadoma żadnej oficjalnej dokumentacji na ten temat, więc wziąć moją interpretację z przymrużeniem oka.

+1

Jeśli obserwujesz stan na Win10, powinieneś użyć '' '. \ Adb.exe shell dumpsys deviceidle | Select-String -Pattern mState * '' '(powershell) zamiast polecenia linux. – Tokenyet

Powiązane problemy