将箭头指向用户面对的方向[关闭]
Posted
技术标签:
【中文标题】将箭头指向用户面对的方向[关闭]【英文标题】:Point arrow to direction the user is facing [closed] 【发布时间】:2013-01-14 17:03:42 【问题描述】:在 Google 地图应用程序中,有一个蓝色小箭头指向用户所面对的方向。如何在我的应用程序中复制它?请提供示例代码。
【问题讨论】:
你试过什么?指南针似乎很方便,但以前修复的方向似乎最好。 【参考方案1】:我有一个应用程序,我必须在其中获取设备指向的方向。为了获取此值,您必须设置 SensorManager 和 SensorListener。这是启动它的基本代码。当然,您必须根据偏角(真北和磁北之间的差异)进行一些调整。
mySensorManager = (SensorManager)getSystemService(Context.SENSOR_SERVICE);
List<Sensor> mySensors = mySensorManager.getSensorList(Sensor.TYPE_ORIENTATION);
private SensorEventListener mySensorEventListener = new SensorEventListener()
@Override
public void onAccuracyChanged(Sensor sensor, int accuracy)
@Override
public void onSensorChanged(SensorEvent event)
//device heading in degrees
float azimuth = event.values[0];
;
【讨论】:
仅供参考,Sensor.TYPE_ORIENTATION 已被弃用。现在它应该使用其他传感器来获取方向。【参考方案2】:从当前 GPS 位置获取路线(有时称为航向)属性。
【讨论】:
显然这在android API中被称为轴承:developer.android.com/reference/android/location/… @NotMe 确保您不要将罗盘方位(来自罗盘传感器)与 GPS(航向/航向)互换。我不知道Android API。 (但对于这个问题,罗盘方位也很合适,但 GPS 航向比罗盘更精确,速度更快。以上是关于将箭头指向用户面对的方向[关闭]的主要内容,如果未能解决你的问题,请参考以下文章