android - 如何使用 ADB 判断屏幕是否打开

标签 android testing adb monkeyrunner

<分区>

我正在寻找是否可以使用 ADB 确定屏幕是否在 Android 设备上打开。对于我尝试使用 monkey runner 运行的一些测试,我需要知道这一点。是否有我可以输入的 shell 命令,因此作为 monkey runner 命令的一部分包含在内,它会明确地告诉我屏幕是打开还是关闭?

最佳答案

在做一些测试时,我发现使用 adb shell dumpsys power | grep mScreenOn 将在版本号为 4.2+ 的设备上运行

到目前为止,我发现可以在我测试过的所有设备上运行的命令是:

 adb shell dumpsys input_method | grep mScreenOn

这将产生如下内容:

mSystemReady=true mScreenOn=true

您可以使用它来确定屏幕是否打开。

在 2.2 - 4.4.2 范围内的所有 Android 模拟器、Samsung Galaxy SII (4.0.4)、Samsung Galaxy Tab 8.9 (4.0.4) 和带 CM11 的 Nexus 4 上测试

另外值得一提的是,在 4.2 之前的设备上,您可以使用命令 adb shell dumpsys power | grep mPowerState 得到这样的东西:

mIsPowered=true mPowerState=3 mScreenOffTime=24970 ms
mPowerState=SCREEN_BRIGHT_BIT SCREEN_ON_BIT

并检测是否存在 SCREEN_ON_BIT 字符串

关于android - 如何使用 ADB 判断屏幕是否打开,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21409044/

相关文章:

android - 包含姓名和图片 URI 的联系人查询

java - 在 java 中使用单独的测试项目的 Scala 的代码覆盖率

android - 是否有适用于 Android 的假数据生成器?

Android Wear 通过 WiFi TCP/IP 启用 ADB 连接

Android Espresso 2.0 卡在点击 gridview 项目上

android - MPAndroidChart - 图例标签被切断

android - Exoplayer:如何通过耳机播放音频?

c++ - 如何在最新的 firefox 中简单地测试 XPCOM 组件?

c# - 更改设备上的临时目录位置

android - Android 设备上的 ADB 输出