如何在Android模拟器上模拟睡眠模式

问题描述 投票:25回答:6

当移动设备进入睡眠/省电模式时,我的Android应用程序的某些用户会报告错误。

我想在Android虚拟设备上测试该问题。是否可以在AVD上模拟手机进入睡眠/省电模式?

提前致谢。

android android-emulator avd
6个回答
39
投票

在模拟器上尝试以下操作

  1. Settings
  2. Developer options
  3. 取消查看Stay awake(从顶部开始的第3个选项)

如果不更改,仿真器将在1分钟后进入休眠状态(默认设置)。

按电源按钮enter image description here唤醒仿真器。

默认情况下未启用Developer options,要启用它,请执行以下操作:

  1. Settings
  2. 点击About emulated device
  3. 单击Build number 7次,您应该会收到Developer options现已启用的通知
  4. 回去,你应该看到Developer options

19
投票

在模拟器上,将设置/安全/屏幕锁定从“无”更改为“滑动”enter image description here

然后,单击右控制栏上的“电源”按钮关闭屏幕,再按一次打开屏幕。现在锁定屏幕将显示出来。 enter image description here


18
投票

模拟器旁边的侧边栏上的Power Button会这样做。

我Mac上的热键是⌘ P

注意:您需要使用“滑动”而不是“无”来设置“锁定屏幕”


2
投票

不知何故,fn + F7在我的mac上不起作用。所以我使用的是:

adb shell input keyevent 26

这将发送POWER KEY事件并关闭屏幕。注意:它不会显示屏幕已关闭。图像会发生。但你无法与之互动。只要再次执行adb shell input keyevent 26,您将看到锁定屏幕,指示设备之前已关闭。


1
投票

通过按F7,您可以在模拟器中模拟睡眠模式。


1
投票

要使用命令行使设备进入睡眠状态,请运行:adb shell input keyevent 223

要使用命令行将设备从睡眠状态唤醒,请运行:adb shell input keyevent 224

有关您可以使用ADB发送的关键事件的更多信息,请查看KEYCODE_...KeyEvent常量,例如:

/** Key code constant: Sleep key.
 * Puts the device to sleep.  Behaves somewhat like {@link #KEYCODE_POWER} but it
 * has no effect if the device is already asleep. */
public static final int KEYCODE_SLEEP           = 223;

/** Key code constant: Wakeup key.
 * Wakes up the device.  Behaves somewhat like {@link #KEYCODE_POWER} but it
 * has no effect if the device is already awake. */
public static final int KEYCODE_WAKEUP          = 224;
© www.soinside.com 2019 - 2024. All rights reserved.