如何在Android模拟器中模拟加速度计?

sru*_*thi 44 android accelerometer android-virtual-device

我现在没有Android手机.但在我的应用程序中,我需要使用加速度计值.如何在模拟环境中执行此操作?

Owe*_*een 38

Android模拟器本身不支持它,但OpenIntents的SensorSimulator填补了空白.下载并解压缩zip文件,然后启动独立的jar文件:

$ java -jar bin/sensorsimulator.jar
Run Code Online (Sandbox Code Playgroud)

接下来,使用SDK附带的adb工具在模拟器上安装SensorSimulatorSettings:

$ adb -s <emulator device> install bin/SensorSimulatorSettings.apk
Run Code Online (Sandbox Code Playgroud)

(运行adb设备以查找模拟器设备名称).最后,在模拟器中运行已安装的SensorSimulatorSettings应用程序并输入IP地址10.0.2.2(尽管SensorSimulator应用程序可能会建议.这是开发主机的环回设备的别名,因此应始终有效.

  • 我做了所有这些,当我尝试使用SensorSimulator控制我的模拟器的加速度计时,没有任何反应. (2认同)

use*_*884 17

最近版本的仿真器启用了Accelerometer和其他传感器仿真支持.一个人可以telnet localhost 5554:

尝试127.0.0.1 ...
连接到localhost.
逃脱角色是'^]'.
Android的控制台:键入"help"以命令的列表
OK

传感器
允许您请求仿真器传感器

可用的子命令:
状态列表所有传感器及其状态.
获取传感器值
设置传感器值

KO:缺少子命令

传感器状态
加速:启用.
磁场:启用.
方向:启用.
温度:启用.
接近度:已启用.

如何模拟摇晃,我不知道.尝试一个接一个地快速发送这两个命令:

sensor set acceleration 0:0:0
sensor set acceleration 99:99:99
Run Code Online (Sandbox Code Playgroud)


Bry*_*yan 6

我也试图让SensorSimulator工作,我想我终于让它工作了.

上面的步骤:"... java -jar bin/sensorsimulator.jar

接下来,使用SDK附带的adb工具在模拟器上安装SensorSimulatorSettings:$ adb -s install bin/SensorSimulatorSettings.apk

...最后,在模拟器中运行已安装的SensorSimulatorSettings应用程序,然后输入IP地址10.0.2.2 ..."

是一个好的开始,但我需要做更多.

您显然需要修改您的应用程序才能使用SensorSimulator.您可以访问http://code.google.com/p/openintents/wiki/SensorSimulator并向下滚动到"如何在应用程序中使用SensorSimulator"部分.

即便如此,我在编译时遇到了一些错误,所以你可能想要看到这个页面:Android模拟器上的Vintage Thermometer组件+ SensorSimulator - 我不得不删除对android.hardware.Sensor,SensorEvent和SensorEventListener的引用.

然后它在调用connectSimulator时失败了.显然,我需要授予我的应用程序在清单文件中使用Internet的权限.

毕竟,我可以使用SensorSimulator虚拟旋转我的手机,并在我的应用程序中获得相应的传感器读数.