Javascript 使用androidstudio中的纬度和经度从google autocomplete中选择的两点之间的距离和持续时间

Javascript 使用androidstudio中的纬度和经度从google autocomplete中选择的两点之间的距离和持续时间,javascript,json,google-maps,android-studio,distance,Javascript,Json,Google Maps,Android Studio,Distance,我试图得到点之间的距离,因为这些地方没有路线名称,所以它不会起作用 这是我正在使用的代码 private void getPrice(字符串位置、字符串目标){ 字符串requestUrl=null; 试一试{ 请求URL=”https://maps.googleapis.com/maps/api/directions/json?" +“模式=驾驶&” +“运输路线首选项=较少驾驶” +“origin=“+mLocation+”&” +“destination=“+mDestination+”

我试图得到点之间的距离,因为这些地方没有路线名称,所以它不会起作用

这是我正在使用的代码

private void getPrice(字符串位置、字符串目标){
字符串requestUrl=null;
试一试{
请求URL=”https://maps.googleapis.com/maps/api/directions/json?"
+“模式=驾驶&”
+“运输路线首选项=较少驾驶”
+“origin=“+mLocation+”&”
+“destination=“+mDestination+”&”
+“key=“+getResources().getString(R.string.google\u browser\u key);
Log.e(“链接”,requestUrl);
mService.getPath(requestUrl).enqueue(新的回调(){
@覆盖公共void onResponse(调用、响应){
试一试{
JSONObject=newJSONObject(response.body().toString());
JSONArray routes=jsonObject.getJSONArray(“routes”);
JSONObject对象=routes.getJSONObject(0);
JSONArray legs=object.getJSONArray(“legs”);
JSONObject legsObject=legs.getJSONObject(0);
JSONObject距离=legsObject.getJSONObject(“距离”);
字符串距离_text=distance.getString(“文本”);
Double distance\u value=Double.parseDouble(distance\u text.replaceAll(“[^0-9\\\.]+”,”);
JSONObject time=legsObject.getJSONObject(“持续时间”);
String time_text=time.getString(“text”);
整数时间\值=整数.parseInt(时间\文本.replaceAll(“\\D+”,”);
字符串final\u calculate=String.format(“%s+%s=$%.2f”),距离文本,时间文本,
getPrice(距离值、时间值);
txtCalculate.setText(最终计算);
}捕获(JSONException e){
e、 printStackTrace();
}
}
@凌驾
失败时公共无效(调用调用,可丢弃的t){
Log.e(“ERROR”,t.getMessage());
}
});
}
捕获(例外情况除外){
例如printStackTrace();
}

}
有一种方法是首先使用纬度和经度。我需要从位置和目的地获取纬度,然后在计算中使用这些纬度和经度。我不知道如何使用纬度和经度。我看了这么多示例,但没有任何结果检查我的答案。如果你的起点和终点是lat/lng,你可以使用哈弗森公式来计算距离。如果你使用自动完成,我相信你可以检索一个地点ID而不是lat,lng。带有位置ID的方向通常比带有lat、lng的方向更精确。