查找android设备相对于用户的方向/位置?

时间:2011-06-17 11:27:55

标签: android

是否可以通过用户持有的方式查找我的设备是指向天空还是指向前方?

我在文档中找不到任何可以知道这是否可能的内容。

感谢。

4 个答案:

答案 0 :(得分:1)

您唯一可以检测的是 - 设备的方向。 为此使用陀螺仪API。

但请注意 - 所有Android设备上都没有陀螺仪。

答案 1 :(得分:1)

是的,这是可能的。您正在寻找的是“方向感应”。我发现了什么看起来很好introduction to using orientation sensing here.

此外,这是Android documentation.

答案 2 :(得分:1)

对我而言,Elixir非常乐于助人。在传感器选项卡下,它列出了设备上的所有可用选项卡。按下播放按钮,您可以看到传感器接收的实际值。非常适合了解特定传感器的工作原理。

如果您想获得有关设备物理方向的信息,可以使用4种不同的传感器:

  • Sensor.TYPE_ACCELEROMETER(0,0,9.8)
  • Sensor.TYPE_GRAVITY(0,0,9.8)
  • Sensor.TYPE_ORIENTATION(x,0,0)
  • Sensor.TYPE_ROTATION_VECTOR(x,0,0)

当设备面向天空时,大括号中的值表示SensoreEvent中值[]的值。 x注意到非特定值......

返回到SensorEventListener impl的值详见: http://developer.android.com/reference/android/hardware/SensorEvent.html#values

答案 3 :(得分:0)

除了陀螺仪传感器,你还可以通过加速计传感器找到方向,但它在x,y,z方向上返回m / s ^ 2.