我怎样才能模拟加速度计在Android模拟器?

我现在没有安卓手机。 但在我的应用程序中,我需要使用加速计值。 我怎样才能在模拟环境中做到这一点?

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

$ java -jar bin/sensorsimulator.jar 

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

 $ adb -s <emulator device> install bin/SensorSimulatorSettings.apk 

(运行adb设备以查找仿真器设备名称)。 最后,在模拟器中运行已安装的SensorSimulatorSettings应用程序,并inputIP地址10.0.2.2 (尽pipeSensorSimulator应用程序可能会提示什么,这是开发主机的环回设备的别名,因此应始终有效。

加速器和其他传感器仿真支持启用了最新版本的仿真器。 一个可以telnet localhost 5554

尝试127.0.0.1 …
连接到本地主机。
转义字符是'^]'。
Android控制台:键入“帮助”的命令列表

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

可用的子命令:
状态列出所有传感器及其状态。
得到传感器值
设置设置的传感器值

KO:缺less子命令

传感器状态
加速:启用。
磁场:启用。
方向:启用。
温度:启用。
proximity:启用。

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

 sensor set acceleration 0:0:0 sensor set acceleration 99:99:99 

我也试图让SensorSimulator工作,我想我终于搞定了。

以上步骤:“… java -jar bin / sensorsimulator.jar

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

…最后,在模拟器中运行已安装的SensorSimulatorSettings应用程序,并inputIP地址10.0.2.2 …“

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

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

即使在编译时遇到了一些错误,所以你可能想看到这个页面: Android模拟器上的老式温度计组件+ SensorSimulator – 我必须删除对android.hardware.Sensor,SensorEvent和SensorEventListener的引用。

然后在connectSimulator调用失败。 显然,我需要给我的应用程序在清单文件中使用Internet的权限。

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

我体验到,目标10的仿真器不支持加速度计,但是对于目标15,它的确支持。 我不知道是否有办法为目标10做。所以为了testing你的应用程序,创build你的项目和目标15的AVD。

我build议你使用Genymotion应用程序,它集成了一个完整的加速度计testing工具,并使用更快的模拟器: Genymotion