android 如何用adb命令打开和关闭屏幕?[duplicate]

emeijp43  于 2022-12-21  发布在  Android
关注(0)|答案(2)|浏览(918)
    • 此问题在此处已有答案**:

(9个答案)
四年前关闭了。
我正在使用keycode_power来打开和关闭我的根手机。bellow命令在这两种情况下都使用打开和关闭屏幕。

adb shell input keyevent KEYCODE_POWER

但是,我想在不同的情况下使用它:打开和关闭。我有两个功能:打开和关闭函数。2如果屏幕是关闭的,我调用打开函数,它会打开屏幕。3如果屏幕已经打开,打开函数将不做任何事情。4否则,如果屏幕是打开的,我将调用关闭函数,它会关闭。
我试着检查屏幕状态,但效果不好。实际上,屏幕状态更新与手机的处理相比太慢了。我也使用其他方法,但这些方法使屏幕唤醒不睡觉。

final Window win = getWindow();
    win.addFlags( WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED |
            WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD |
            WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON |
            WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON |
            WindowManager.LayoutParams.FLAG_ALLOW_LOCK_WHILE_SCREEN_ON );

第二种方法:

PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.SCREEN_BRIGHT_WAKE_LOCK | PowerManager.ACQUIRE_CAUSES_WAKEUP, "tag");
wl.acquire();
5uzkadbs

5uzkadbs1#

adb shell input keyevent 26

26 -是设备上的keyevent代码电源按钮。
您可以通过链接找到更多命令:http://adbshell.com/commands

4jb9z9bj

4jb9z9bj2#

您可以编写一个脚本来控制屏幕的打开/关闭。下面是示例脚本代码:

result="$(adb shell dumpsys input_method | grep -c "mScreenOn=true")"

if [ "$result" == 1 ]; then
    echo "Screen is already on."

else
    echo "Turning screen on."
    adb shell input keyevent 26
fi

相关问题