如何在Android模拟器中模拟陀螺仪

时间:2012-07-24 07:20:14

标签: android emulation gyroscope

我正在尝试研究与陀螺仪相关的东西。我的手机没有内置功能 陀螺仪。有没有办法在模拟器中包含陀螺仪功能,至少要使仿真器设置为具有真实陀螺仪的行为?

P.S。我不需要从陀螺仪读取任何值,我只是希望模拟器认为它有一个。

我已经彻底搜查了所有我发现的是:http://code.google.com/p/openintents/wiki/SensorSimulator

但这并不能让仿真器觉得它有内置陀螺仪,而是在仿真器中运行应用程序并从“SensorSimulator”中模拟的传感器中获取读数。

任何信息都会有所帮助

3 个答案:

答案 0 :(得分:7)

enter image description here

使用Android Studio 3.0启动的Android模拟器可以模拟一系列可能解决您的用例问题的旋转传感器。我们在Android Emulator v26.1.0中特别添加了Gyroscope

答案 1 :(得分:1)

我不认为模拟器中有任何陀螺仪支持。

source.android.com's Sensors docs

  

无法根据磁力计和陀螺仪模拟陀螺仪   加速度计,因为这会导致它减少局部   一致性和反应能力。它必须基于通常的陀螺仪   芯片。

我正在研究类似的事情,所以我会阅读要收集哪些数据以及不收集哪些数据。

答案 2 :(得分:1)

2017年5月17日,Android Studio 3.0的模拟器released to the Canary Channel新支持陀螺仪。请注意(截至今天)Android Studio 2.3.3是最新版本(即#34;稳定版本)。 Android Studio Here is how you setup the Preview Version,可以与官方版本同时存在。 请注意,开箱即用运行模拟器不会起作用,因为它不是最近的版本: enter image description here

您需要按照“更改更新频道”进行操作。后一个链接中的步骤:选择文件>其他设置>默认设置并从Canary频道更新: enter image description here 请注意,在运行带有Android 7+的虚拟设备(也称为API 26)时,在模拟器的虚拟传感器(扩展控件中)中显示陀螺仪输出,但它(至少尚未)将该输出发送到虚拟设备;当我移动手机时实际看到示例应用程序中的环境移动,我不得不使用Android 7.1.1(API 25)。

(感谢@ jamal-eason for the protip!)

PREVIOUS(6/12/17):

截至撰写Android模拟器的 发布版本 之日(在Android Studio 2.3.3中),提供Gyroscope支持

虽然@Nesski引用的文档提出了这一点,但我提供以下证据:

Android SDK' s Virtual Reality getting started demo是名为 Treasure Hunt 的游戏。 Here is what it looks like在手机上播放时。请注意,当玩家环顾四周时,相机会移动。

与Google Daydream兼容的handful of devices - 因为它们包含内置陀螺仪 - Android Studio的AVD Manager仅提供其中两种:Pixel和Pixel XL。我为每部手机下载了两个虚拟设备,以便我可以在每台设备上运行最新的两个Android版本(7.1.1和8.0):

The Virtual Devices I tested in the Emulator

我在模拟器中运行了每个设备,得到了类似的结果:按 CTRL + SHIFT + C (在Windows上)调出Extended Controls,你就会成为能够测试手机的虚拟传感器:

enter image description here

使用其旋转控件,您会注意到,虽然有加速度计输出,磁力计输出和旋转输出,没有Gryroscope输出您可以像在环顾四周一样旋转手机,但随着手机的移动,游戏的相机视图不会改变。

虽然这个令人遗憾的事实令人遗憾,但我希望并希望Android在未来随着更多开发人员加入Google Daydream虚拟现实潮流而向模拟器添加陀螺仪支持。