Android: usuń lub wyłącz programowo ekran blokady na urządzeniu Samsung Galaxy S2
Problem Moje zautomatyzowane testy na Androida są zawodne, ponieważ testowane działania czasami działają i są czasami wstrzymywane.
Przyczyna Jeśli moje urządzenie z Androidem (Samsung Galaxy S2) ma włączony ekran blokady, wszystkie czynności są natychmiast włączane w tryb pauzy.
Jak mogę programowo wyłączyć ekran blokady, gdy moje testy są uruchomione?
Oto, co próbowałem, a które nie przyniosło żadnego rezultatu (tj. Ekran blokady nadal jest aktywny i wstrzymuje moje działania).
Dodajandroid.permission.DISABLE_KEYGUARD
pozwolenie i użytkowanieKeyguardLock.disableKeyguard()
jak wyjaśniono wandroid doc.
Ustaw flagi okien: FLAG_SHOW_WHEN_LOCKED, FLAG_TURN_SCREEN_ON, FLAG_DISMISS_KEYGUARD.
Posługiwać sięWakeLock.acquire()
zPowerManager.FULL_WAKE_LOCK
, PowerManager.ACQUIRE_CAUSES_WAKEUP
, PowerManager.ON_AFTER_RELEASE
iPowerManager.SCREEN_BRIGHT_WAKE_LOCK
parametry.
adb shell input keyevent 82