如何在安卓模拟器中模拟加速度计? [关闭]
Posted
技术标签:
【中文标题】如何在安卓模拟器中模拟加速度计? [关闭]【英文标题】:How can i simulate accelerometer in android emulator? [closed] 【发布时间】:2011-04-24 16:51:30 【问题描述】:我现在没有 android 手机。但在我的应用程序中,我需要使用加速度计值。如何在模拟环境中做到这一点?
【问题讨论】:
【参考方案1】: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 应用程序可能会建议。这是开发主机环回设备的别名,因此应始终为有效。
【讨论】:
我做了所有这些,当我尝试使用 SensorSimulator 控制模拟器的加速度计时,什么也没有发生。 下载 zip 文件的工作链接here,但因为距离上次提交已经有好几年了,我不建议尝试这个【参考方案2】:最新版本的模拟器启用了加速度计和其他传感器模拟支持。可以telnet localhost 5554
:
正在尝试 127.0.0.1... 已连接到本地主机。 转义字符是 '^]'。 Android 控制台:键入“帮助”以获取命令列表 好的
传感器 允许您请求模拟器传感器
可用的子命令: status 列出所有传感器及其状态。 获取传感器值 设置设置传感器值
KO:缺少子命令
传感器状态 加速:启用。 磁场:启用。 方向:启用。 温度:启用。 接近度:启用。 好的
我不知道如何准确地模拟震动。尝试一个接一个地快速发送这两个命令:
sensor set acceleration 0:0:0
sensor set acceleration 99:99:99
【讨论】:
“adb shell dumpsys sensorservice ”可以用于模拟吗?【参考方案3】:我也试图让 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”部分。
即便如此,我还是在编译时遇到了一些错误,因此您可能希望查看此页面:Vintage Thermometer component + SensorSimulator on the Android emulator - 我不得不删除对 android.hardware.Sensor、SensorEvent 和 SensorEventListener 的引用。
然后它在调用 connectSimulator 时失败了。显然,我需要在清单文件中授予我的应用程序使用 Internet 的权限。
毕竟,我可以使用 SensorSimulator 虚拟旋转我的手机,并在我的应用程序中获得相应的传感器读数。
【讨论】:
【参考方案4】:我体验到目标 10 的模拟器不支持加速度计,但目标 15 支持。我不知道是否有办法为目标 10 做到这一点。 因此,为了测试您的应用程序,请为目标 15 创建您的项目和 AVD。
【讨论】:
【参考方案5】:我建议你使用 Genymotion 应用程序,它集成了一个完整的加速度计测试工具并使用更快的模拟器:Genymotion
【讨论】:
以上是关于如何在安卓模拟器中模拟加速度计? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
如何使用mockito在安卓系统中创建模拟api响应[关闭]。
android安卓setShadowLayer canvas绘制矩形阴影 在电脑模拟器上能显示效果 但是到了手机上却没了阴影效果