我有一个程序,其中的位置经纬度值存储在一个数据库中,我下载。
我想知道这些坐标和我当前位置之间的距离。
Location 类有一个简单的方法来查找两个 Location 对象之间的距离,所以我想我应该用坐标创建一个 Location 对象,然后调用这个方法。
有什么简单的方法吗?此外,如果有另一个可靠的,相当简单的方程,不会杂乱的东西太多,这将工作了。谢谢。
(android.Location. Location)
您可以使用 他们的构造者创建位置,然后设置纬度和经度值。
final Location location = new Location("yourprovidername"); location.setLatitude(1.2345d); location.setLongitude(1.2345d);
假设您已经有一个具有当前位置的位置对象。
Location targetLocation = new Location("");//provider name is unnecessary targetLocation.setLatitude(0.0d);//your coords of course targetLocation.setLongitude(0.0d); float distanceInMeters = targetLocation.distanceTo(myLocation);
我再次回答这个问题,因为很多像我一样的人不知道 "providername"实际上是什么。下面的代码回答了这个问题:
"providername"
Location location = new Location(LocationManager.GPS_PROVIDER); location.setLatitude(23.5678); location.setLongitude(34.456);
在这里,我使用 LocationManager.GPS_PROVIDER作为提供程序名称。
LocationManager.GPS_PROVIDER