我怎样才能模拟加速度计在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