【问题标题】:Android Emulator Orientation Change Through Emulator Console or ADB通过模拟器控制台或 ADB 更改 Android 模拟器方向
【发布时间】:2012-06-25 06:41:14
【问题描述】:

我正在尝试构建一个自动化测试框架来检查应用程序应该响应的基本内容,而不会崩溃。其中之一是检查应用程序是否正确响应配置更改。现在,由于它是自动化的,我必须在横向和纵向之间切换模拟器的方向,并以编程方式观察它是否崩溃。 [caps 因为有很多关于 ctrl+F12 或 num pad 7 的问题]

我正在尝试找出一个 adb 或模拟器控制台命令来完成这项工作。

我远程登录到 localhost:5554 并输入了以下命令:

$sensor status // 给出所有传感器的启用/禁用状态

acceleration: enabled.
magnetic-field: enabled.
orientation: enabled.
temperature: enabled.
proximity: enabled.
OK

$sensor 获取方向

orientation = 0:0:0

$sensor 设置方向 90:0:0

OK

我尝试了不同的组合,但没有响应。为了获得在横向模式下设置的值,我使用 ctrl+F12 手动更改了方向并尝试再次获取方向传感器状态,但令我沮丧的是,该值没有改变。

A certain blog also mentioned this particular command in ADB

$service 调用窗口 18 i32 1

$service 调用窗口 18 i32 0

用于切换方向。但是,我收到此错误消息

结果:包裹(fffffffc ffffffff '........')

如果我能找到解决方案,那就太好了。

【问题讨论】:

  • 我也遇到了同样的问题,有什么更新吗?

标签: android console orientation emulation adb


【解决方案1】:

我终于想出了一个办法。

首先我将尝试澄清一下这个问题:

通常人们谈论“旋转”AVD 屏幕实际上意味着将皮肤布局更改为纵向/横向(模拟平板电脑的旋转)。这可以通过按数字键盘上的“7/9”键或按 ctrl+Fn+F12 来完成。在这种情况下,显示的方向不会改变,有时显示会烦人的从左到右或从右到左,而不是自然的从上到下。这可以通过取消选中android设置中的自动旋转来解决。

但是,在某些情况下,我们希望看到重力传感器的效果。我认为这实际上与OP的问题有关。与 GPS 不同,Eclipse 没有 GUI 工具来执行此操作。 OP非常接近解决问题。但是,方向传感器不是正确的,我们需要使用重力/加速度传感器来自动旋转屏幕。 尝试以下命令并观察自动旋转的显示方向:

sensor set acceleration 9.77622:0:0
sensor set acceleration 0:9.77622:0
sensor set acceleration 0:0:9.77622

【讨论】:

  • 嗨,我试过了。但是我没有找到任何类似sensor的命令。唯一的命令是sensorservice。我使用的Mobile ph是samsung s3,s2 and htc
  • @Ewoks,请再读一遍标题。这适用于模拟器
  • @Ewoks 这是用于通过终端或 cmd 控制台运行的 telnet 命令
猜你喜欢
  • 1970-01-01
  • 2015-02-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-02-08
  • 1970-01-01
  • 2016-07-20
  • 2020-05-19
相关资源
最近更新 更多