我正在构建一个需要我的位置和方位的Android应用程序。
当我使用location.getBearing()
时,结果为0.0
当我在房子里走动时,Google地图应用程序似乎对我有好处。我的问题是如何才能获得我的影响力,以便像谷歌地图一样完美无瑕。
我已经尝试使用之前距离至少为2米的已知位置进行计算,然后将轴承移到该位置,但它已遍布整个地方。
由于
答案 0 :(得分:0)
我找到了问题的解决方案。 locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,0,0,locationListener);
第一个0表示再次更新之前的最短时间。通过将其设置为0,由于某种原因,gps没有得到轴承。只需将其更改为更高的数字即可解决问题。像这样;
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,2,0,locationListener);
答案 1 :(得分:0)
轴承是此设备的水平行进方向,与设备方向无关。如果设备有轴承,则保证在(0.0,360.0)范围内。
如果此位置没有方位,则返回0.0。
我建议您使用hasBearing()
调用来确定是否可以使用轴承。
修改
我会更改requestLocationUpdates
参数的合理值。请在此处阅读:https://developer.android.com/reference/android/location/LocationManager.html#requestLocationUpdates
minTime和minDistance应该用于限制使用太多的设备电池。我会恭敬地建议(2000,2.0)。 (2秒或2米)