我现在没有安卓手机。但是在我的应用程序中,我需要使用加速度计数值。如何在模拟环境中实现此功能?
我现在没有安卓手机。但是在我的应用程序中,我需要使用加速度计数值。如何在模拟环境中实现此功能?
Android模拟器本身不支持,但OpenIntents的SensorSimulator填补了这个空缺。下载并解压缩zip文件,然后启动独立的jar文件:
$ java -jar bin/sensorsimulator.jar
接下来,使用SDK中提供的adb工具在模拟器上安装SensorSimulatorSettings:
$ adb -s <emulator device> install bin/SensorSimulatorSettings.apk
运行adb devices命令以查找模拟器设备名称。最后,在模拟器中运行已安装的SensorSimulatorSettings应用程序,并输入IP地址10.0.2.2(尽管SensorSimulator应用程序可能会建议其他方式)。这是一个指向开发主机环回设备的别名,因此应始终有效。
最近的模拟器版本支持加速度计和其他传感器模拟功能。您可以通过telnet localhost 5554
命令:
尝试连接到 127.0.0.1...
已连接到本地主机。
转义字符为 '^]'。
Android 控制台:键入“help”获取命令列表
OKsensor
允许您请求模拟器传感器可用的子命令:
status 列出所有传感器及其状态。
get 获取传感器值
set 设置传感器值KO:缺少子命令
sensor status
acceleration: enabled.
magnetic-field: enabled.
orientation: enabled.
temperature: enabled.
proximity: enabled.
OK
如何准确模拟摇晃,我不知道。请尝试快速发送以下两个命令:
sensor set acceleration 0:0:0
sensor set acceleration 99:99:99
我发现针对目标10的模拟器不支持加速度计,但是针对目标15的模拟器支持。我不知道是否有办法让目标10也支持加速度计。 因此,在测试您的应用程序时,请创建针对目标15的项目和AVD。