是否可以增加纬度和经度值的十进制值以获得最近地点的位置?

Posted

技术标签:

【中文标题】是否可以增加纬度和经度值的十进制值以获得最近地点的位置?【英文标题】:Is it possible to increase the decimal values of latitude and longitude value to get the location of nearest place? 【发布时间】:2015-01-17 09:34:54 【问题描述】:

在我的应用程序中,我需要使用纬度和经度来查找位置。有时它显示为找不到位置。在某些地方,我得到了正确的位置。所以如果我增加纬度和经度的十进制值,那么我至少会得到最近的位置吗?如果是这样,我怎样才能从最后一个增加十进制值?

【问题讨论】:

【参考方案1】:

使用 loc.getAccuracy() 方法检查您收到的位置的准确度。如果该值小于 10(或小于该值),那么您可以考虑它,否则等待位置 Lister 获取另一个位置。

getLastKnownLocation 是您最后一个已知位置,不要只使用 getAccuracy 并检查时间。

如果您只需要准确的位置,最好不要使用 getLastKnownLocation。

提高准确性:

lm = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
Criteria criteria = new Criteria();
criteria.setAccuracy(Criteria.ACCURACY_HIGH);  
lm.getBestProvider(criteria, true);

ACCURACY_HIGH 小于 100 米 ACCURACY_MEDIUM 在 100 - 500 米之间 ACCURACY_LOW 大于 500 米

【讨论】:

我明白。但我的问题是,当它显示为无法获取位置时,我可以增加十进制值以获取位置地址吗! 你在使用criteria.setAccuracy(Criteria.ACCURACY_HIGH); ? 不,我会得到 lat 和 long 值并使用地理编码器类来获取地址 现在我该怎么办? lm 会有最好的供应商吗?

以上是关于是否可以增加纬度和经度值的十进制值以获得最近地点的位置?的主要内容,如果未能解决你的问题,请参考以下文章

如何通过地图API获得任意两个地点的距离

使用纬度和经度获取地址和地名

如何从纬度和经度值中找到一个地方的名称

如何从java中的列表中获取最近的纬度经度[重复]

使用纬度和经度获取特定地址[重复]

包含地点、父地点、纬度、经度等的免费数据库