我正在寻找一种方法来使用ADB来解除键盘锁,以便自动执行某些任务。
我想启动ACTIVITY(也许在android.app.KeyguardManager.KeyguardLock中调用公共方法disableKeyguard),因为我认为它可以在所有(或大多数)Android设备上运行,但我不确定语法。
我不想使用MonkeyRunner,因为它在所有设备上都不存在(或者可能是可调用的)。我也无法发送一个MENU键码(adb shell输入键码82),因为这并不会解除所有设备上的键盘锁。
目前我正在发送事件(低级触摸事件),但这需要针对每个设备进行自定义,因此这是一项非常耗时的任务。
有人有建议吗?
答案 0 :(得分:1)
“活动测试”文章有一个名为Unlocking the emulator or device的部分,可以解决这种情况。
简而言之,没有办法直接使用adb
,但使用disableKeyguard()
并不复杂(请参阅上面链接的文章中的三行示例代码)。您可以轻松地组合一个小应用程序,除了禁用键盘锁之外什么都不做。那就是
adb install <apk>
adb shell am start <package>/.<activity>
# Whatever you need to automate
adb uninstall <package>
(其中<apk>
,<package>
和<activity>
都是指仅禁用键盘锁的小应用。)