【发布时间】:2013-09-19 08:49:47
【问题描述】:
问题我的 Android 自动化测试不可靠,因为测试的 Activity 有时会运行,有时会暂停。
原因如果我的安卓设备(三星 Galaxy S2)开启了锁屏,所有活动都会立即进入暂停模式。
如何在测试运行时以编程方式禁用锁定屏幕?
这是我尝试过的,但根本没有产生任何结果(即,锁定屏幕仍处于活动状态并暂停我的活动)。
添加
android.permission.DISABLE_KEYGUARD权限并使用KeyguardLock.disableKeyguard(),如android doc 中所述。设置窗口标志:FLAG_SHOW_WHEN_LOCKED、FLAG_TURN_SCREEN_ON、FLAG_DISMISS_KEYGUARD。
将
WakeLock.acquire()与PowerManager.FULL_WAKE_LOCK、PowerManager.ACQUIRE_CAUSES_WAKEUP、PowerManager.ON_AFTER_RELEASE和PowerManager.SCREEN_BRIGHT_WAKE_LOCK参数一起使用。adb shell input keyevent 82
【问题讨论】: