我需要在脚本中知道设备的屏幕是否已关闭。是否有任何简单的命令来使用ADB获取此类信息?
答案 0 :(得分:14)
dumpsys power | grep mScreenOn
答案 1 :(得分:6)
在5.0上,您似乎必须为<{p>}的dumpsys power
输出进行grep
Display Power: state=OFF
或
Display Power: state=ON
答案 2 :(得分:1)
这对我有用:
adb shell dumpsys display | grep mScreenState
输出:
mScreenState=OFF
答案 3 :(得分:0)
在Moto G5 +,Moto X4和Samsung Note 8上,我看到以下内容可以正常工作,而dumpsys电源却没有起作用(所有设备均为棉花糖或更高版本):
adb shell dumpsys deviceidle | grep mScreenOn
收益
mScreenOn=false
屏幕“锁定”时是否为空白,而
adb shell dumpsys window | grep mScreenOn
产量,
mScreenOnEarly=false mScreenOnFully=false
仅当屏幕没有“呼吸”信息(例如时间)时。
使用dumpsys deviceidle来了解是否需要解锁屏幕以允许用户交互。
答案 4 :(得分:0)
XiaoMi 9
10
mHoldingDisplaySuspendBlocker
adb shell dumpsys power | grep mHoldingDisplaySuspendBlocker
mHoldingDisplaySuspendBlocker=false
->屏幕关闭 mHoldingDisplaySuspendBlocker=true
->屏幕打开 mWakefulness
adb shell dumpsys power | grep mWakefulness=
mWakefulness=Dozing
->屏幕关闭 mWakefulness=Awake
->屏幕打开 nfc
(如果android有NFC模块)adb shell dumpsys nfc | grep mScreenState=
mScreenState=OFF_LOCKED
->屏幕关闭(并锁定)mScreenState=ON_XXX
->屏幕打开
mScreenState=ON_LOCKED
->屏幕打开(并且已锁定)mScreenState=ON_UNLOCKED
->屏幕打开(和已解锁)service call
adb shell service call power 12
Result: Parcel(00000000 00000000 '........')
-> 0
表示屏幕关闭 Result: Parcel(00000000 00000001 '........')
-> 1
表示屏幕 ON