用户覆盖:

大多数设备都有陀螺仪和加速度计,但几乎每个设备都有加速度计。特别是较旧的设备和较便宜的设备没有陀螺仪。不要忘记,因为它是一个孩子的应用程序,也许父母不想让小家伙使用他们的700美元的平板电脑,并可能使用更便宜的。更便宜的设备往往没有陀螺仪。所以1为加速度计。

用户体验

加速度计测量3维坐标系中的加速度。在大多数情况下(当用户实际上不跳动或扔设备),加速度的最大部分是重力。只有重力,很容易确定倾斜和轻微的运动。此外,你有重力软件传感器,以消除奇怪的运动,线性加速度消除重力。陀螺仪检测旋转。它更敏感,更精确,并产生比加速度计更快的事件,但它似乎是一个overkill这个用例。如果你想制作一个3D赛车游戏或飞行模拟器这将是一个赢得的陀螺仪,但对于一个孩子的应用程序,它是太多了。

电池使用

没有竞争。陀螺仪使用3-30倍的电池(或许更多,取决于设备),而加速度计是非常温柔的电池。此外,对于大多数用户,加速度计已经处于活动状态(自动旋转屏幕),因此这里没有传感器电池使用。 1为加速度计

编程

传感器在Android应用中非常容易实现。由于陀螺仪检测到旋转速度,所以如果设备静止(并且在-0.01rad / s的范围内可能有一点噪声),则它给出所有0值,因此您只需要一个小的if块来消除非常轻微的运动当陀螺仪值小于0.2rad / s时)。使用加速度计,您需要一些额外的计算来确定设备的方向,哪个轴实际上是需要更多注意来确定运动方向的轴。这不难做,但它增加了一些额外的代码和一些额外的调试到您的工作线。 1为陀螺仪。

结论

对于一个简单的孩子应用程序,加速度计是要走的路。我不会再想了。由于你不在乎精度,你实际上消除了陀螺仪获得的点。