1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > 百度地图测量两点间距离(行车距离)

百度地图测量两点间距离(行车距离)

时间:2019-02-07 07:35:06

相关推荐

百度地图测量两点间距离(行车距离)

另一种可能的实现方法 跳转链接

本文写于09月09日,百度官方文档可能已经更新,总体思路就是通过参数请求百度api,接收并解析api的响应数据。

这个是Web服务端,驾驶导航两点测距的api

百度链接

我写的是java版的测距

核心工具类代码:

public class MeasureUtil {private final static String DRIVING = "http://api./routematrix/v2/driving?output=json&tactics=12&ak=";public static String getDistance(String appkey, LatLng from, LatLng to)throws IOException {StringBuilder result = new StringBuilder();URL url = new URL(getURL(appkey, from, to));HttpURLConnection conn = (HttpURLConnection) url.openConnection();conn.setDoInput(true);conn.setDoOutput(true);conn.setUseCaches(false);conn.connect();BufferedReader bReader = new BufferedReader(new InputStreamReader(conn.getInputStream(), "utf-8"));String str = null;while ((str = bReader.readLine()) != null) {result.append(str);}bReader.close();conn.disconnect();return result.toString();}private static String getURL(String appkey, LatLng from, LatLng to) {StringBuilder url = new StringBuilder(DRIVING);url.append(appkey);if (from != null) {url.append("&origins=");url.append(from.getLat()).append(",").append(from.getLng());}if (to != null) {url.append("&destinations=");url.append(to.getLat()).append(",").append(to.getLng());}return url.toString();}}

使用方法:

LatLng from = new LatLng();from.setLat(39.914935);from.setLng(116.405994);LatLng to = new LatLng();to.setLat(39.914492);to.setLng(116.46636);System.out.println(MeasureUtil.getDistance(你的秘钥, from, to));

测试结果:(这里我指定返回的是json)

{"status":0,"result":[{"distance":{"text":"6.5公里","value":6461},"duration":{"text":"17分钟","value":1004}}],"message":"成功"}

jar下载地址:/download/u013271384/9971152

源码下载地址:/download/u013271384/10385682

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。