10

我正在尝试研究与陀螺仪相关的东西。我的手机没有内置陀螺仪。有没有办法在模拟器中包含陀螺仪功能,至少让模拟器设置为它的行为就像它有一个真正的陀螺仪一样?

ps 我不需要从陀螺仪中读取任何值,我只是想让模拟器认为它有一个。

我已经彻底搜索过,我发现的只是:http ://code.google.com/p/openintents/wiki/SensorSimulator

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

任何信息都会有帮助

4

3 回答 3

10

在此处输入图像描述

与Android Studio 3.0一起推出的 Android Emulator可以模拟一系列可能满足您的用例的旋转传感器。我们在 Android Emulator v26.1.0 中特别添加了陀螺仪。

于 2016-11-08T09:17:14.233 回答
3

Android Studio 3.0 的模拟器新支持陀螺仪,于 2017 年 5 月 17 日发布到金丝雀频道。请注意,(截至今天)Android Studio 2.3.3 是最新的官方(即“稳定”)版本。 这是您如何设置Android Studio的预览版,它可以与正式版同时存在。请注意,开箱即用的模拟器将不起作用,因为它不是最新的版本: 在此处输入图像描述

您需要按照后一个链接中的“更改更新频道”步骤:选择文件 > 其他设置 > 默认设置并从 Canary 频道更新: 在此处输入图像描述 请注意,在使用 Android 7+(又名 API 26)运行虚拟设备时确实显示模拟器的虚拟传感器(在扩展控制内)中的陀螺仪输出,它不会(至少)将该输出发送到虚拟设备;要在移动手机时实际看到示例应用程序中的环境移动,我必须使用 Android 7.1.1 (API 25)。

(感谢@jamal-eason 的提示!)

以前(2017 年 6 月 12 日):

截至撰写本文时,Android Emulator 的发布版本(Android Studio 2.3.3 中)不提供陀螺仪支持。

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

Android SDK 的虚拟现实入门演示是一款名为寻宝游戏。 这是在手机上播放时的样子。请注意,当玩家环顾四周时,相机会移动。

在与 Google Daydream 兼容的少数设备中——因为它们包含一个内部陀螺仪——Android Studio 的 AVD 管理器只提供其中两个:Pixel 和 Pixel XL。我为每部手机下载了两个虚拟设备,以便可以在每个设备上运行最新的两个 Android 版本(7.1.1 和 8.0):

我在模拟器中测试的虚拟设备

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

在此处输入图像描述

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

虽然这个悲惨的现实是不幸的,但我确实希望并期待 Android 能够在未来为模拟器添加陀螺仪支持,因为更多的开发人员加入了 Google Daydream 虚拟现实的潮流。

于 2017-06-13T05:07:33.837 回答
1

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

source.android.com 的 Sensors 文档状态

陀螺仪无法基于磁力计和加速度计进行仿真,因为这会导致其局部一致性和响应性降低。它必须基于通常的陀螺仪芯片。

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

于 2016-10-28T14:19:24.360 回答