use*_*857 34 android accelerometer gyroscope
可以假设大多数用户设备都有陀螺仪吗?换句话说,我会在我的应用中使用陀螺仪排除相当多的人吗?
我正在制作儿童故事书应用程序,我希望用户能够围绕偏航轴倾斜设备,来回移动摇椅.它只是应用程序的一小部分,并不一定非常精确.我应该使用一个传感器吗?
foi*_*ibs 61
用户覆盖:
大多数设备都有陀螺仪和加速度计,但几乎每个设备都有加速度计.特别是较旧的设备和较便宜的设备没有陀螺仪.不要忘记,因为它是一个儿童应用程序,也许父母不希望小家伙使用他们的超级700美元的平板电脑,并可能会使用更便宜的平板电脑.更便宜的设备往往没有陀螺仪.所以+1加速度计.
用户体验
加速度计测量三维坐标系中的加速度.在大多数情况下(当用户实际上没有跳跃或扔设备时),加速度的最大部分是重力.仅通过重力就可以很容易地确定倾斜和轻微的运动.另外,你有Gravity软件传感器来消除奇怪的运动,而线性加速可以消除重力.陀螺仪检测旋转.它比加速度计更敏感,更精确,产生的事件更快,但对于这个用例来说似乎有些过分.如果你想制作3D赛车游戏或飞行模拟器这对于陀螺仪来说是一场胜利,但对于儿童应用来说,这太过分了.
电池使用情况
这里没有比赛.陀螺仪使用的电池数量增加了3-30倍(可能更多,取决于设备),而加速度计则对电池非常温和.此外,对于大多数用户来说,加速度计已经处于活动状态(自动旋转屏幕),因此这里没有使用传感器电池.+1表示加速度计
程序设计
传感器在Android应用程序中实现非常简单直接.由于陀螺仪检测到旋转速度,如果设备保持静止(并且可能在+ -0.01rad/s范围内可能有一点噪音),它会给出全0值,因此您只需要一个小块if来消除非常轻微的运动(例如当陀螺仪值小于0.2rad/s时).使用加速度计,您需要一些额外的计算来确定设备的方向,以及哪个轴实际上是需要更多关注以确定运动方向的轴.这并不难,但它确实为您的工作添加了一些额外的代码行和一些额外的调试.陀螺仪+1.
结论
对于一个简单的儿童应用程序,加速度计是要走的路.我不会再考虑了.由于您不太关心精度,因此实际上消除了陀螺仪获得的点数.
| 归档时间: |
|
| 查看次数: |
32012 次 |
| 最近记录: |