【问题标题】:How to calculate distance between two areas in a city如何计算城市中两个区域之间的距离
【发布时间】:2016-06-07 16:50:43
【问题描述】:

我想制作一个 android 应用程序,它可以提供城市中两个区域之间的距离。

用户将有两个输入字段,他必须在其中输入他想查找距离的两个区域名称。

在他输入区域名称后。我的应用应该显示距离。

我应该如何实现这个?

【问题讨论】:

    标签: android google-maps geolocation location


    【解决方案1】:

    首先您需要找到该地区名称的纬度和经度。

    转换Location对象中的两个地址,参考this

    使用distanceTo()计算距离

    location1.distanceTo(location2);
    

    返回此位置与该位置之间的大致距离(以米为单位) 给定的位置。

    请参阅 this 了解 distanceTo() 详细信息。

    【讨论】:

    • 如何查询该地区的经纬度。我的意思是当我们输入区域名称时如何转换它。
    【解决方案2】:

    首先获取起点和终点的纬度和经度并使用 Location类的distanceBetween方法计算距离这里是link http://developer.android.com/reference/android/location/Location.html#distanceBetween(double,%20double,%20double,%20double,%20float[])

    【讨论】:

      【解决方案3】:

      使用Google Maps Directions API。您需要通过 HTTP 请求路线。您可以直接从 Android 或通过您自己的服务器执行此操作。

      例如,来自Montreal to Toronto的路线:

      获取http://maps.googleapis.com/maps/api/directions/json?origin=Toronto&destination=Montreal&sensor=false

      您最终会得到一些 JSON。在routes[].legs[].distance,你会得到一个像这样的对象:

        "legs" : [
              {
                 "distance" : {
                    "text" : "542 km",
                    "value" : 542389
                 },
      

      也可以直接从响应对象中获取折线信息。

      更多详情请访问此处。 Get the distance between two locations in android?

      【讨论】:

      • 你知道如何实现它吗?因为我已经尝试了很多使用 Google Maps Directions API 但无法做到这一点。如果你有,请给我一个示例程序。
      猜你喜欢
      • 1970-01-01
      • 2011-03-25
      • 2010-09-06
      • 2021-11-14
      • 1970-01-01
      • 2021-06-26
      • 1970-01-01
      • 1970-01-01
      • 2011-11-17
      相关资源
      最近更新 更多