首页 > 解决方案 > android studio中的google map api查找距离但不显示地图

问题描述

我想在android studio中使用google map api来查找2个地方之间的距离以用于某些计算目的,但我不想显示地图或标记,我该怎么做?

标签: androidandroid-studiogoogle-maps-api-3

解决方案


如果您只想计算地球上两点之间的距离,并且您有纬度和经度坐标,那么就不需要任何 Google API 的地图或库。这只需要额外的开销和维护。只需像这样创建一个静态方法:

public static double getDistanceMeters(LatLng pt1, LatLng pt2){
    double distance = 0d;
    try{
        double theta = pt1.longitude - pt2.longitude;
        double dist = Math.sin(Math.toRadians(pt1.latitude)) * Math.sin(Math.toRadians(pt2.latitude))
                + Math.cos(Math.toRadians(pt1.latitude)) * Math.cos(Math.toRadians(pt2.latitude)) * Math.cos(Math.toRadians(theta));

        dist = Math.acos(dist);
        dist = Math.toDegrees(dist);
        distance = dist * 60 * 1853.1596;
    }
    catch (Exception ex){
        System.out.println(ex.getMessage());
    }
    return distance;
} 

相同的算法适用于任何平台。只需将其翻译成适当的程序语言。


推荐阅读