javascript - 使用androidstudio中的纬度和经度从谷歌自动完成中选择的两点之间的距离和持续时间
问题描述
我正在尝试获取点之间的距离,因为这些地方没有路线名称,所以它不起作用。
这是我正在使用的代码
private void getPrice(String mLocation, String mDestination) {
String requestUrl= null;
try {
requestUrl = "https://maps.googleapis.com/maps/api/directions/json?"
+ "mode=driving&"
+"transit_routing_preference=less_driving&"
+ "origin="+mLocation+"&"
+"destination="+mDestination+"&"
+"key="+getResources().getString(R.string.google_browser_key);
Log.e("LINK",requestUrl);
mService.getPath(requestUrl).enqueue(new Callback<String>() {
@Override public void onResponse(Call<String> call, Response<String> response) {
try {
JSONObject jsonObject = new JSONObject(response.body().toString());
JSONArray routes = jsonObject.getJSONArray("routes");
JSONObject object = routes.getJSONObject(0);
JSONArray legs = object.getJSONArray("legs");
JSONObject legsObject = legs.getJSONObject(0);
JSONObject distance = legsObject.getJSONObject("distance");
String distance_text = distance.getString("text");
Double distance_value = Double.parseDouble(distance_text.replaceAll("[^0-9\\\\.]+",""));
JSONObject time = legsObject.getJSONObject("duration");
String time_text = time.getString("text");
Integer time_value = Integer.parseInt(time_text.replaceAll("\\D+",""));
String final_calculate = String.format("%s + %s = $%.2f",distance_text,time_text,
Common.getPrice(distance_value,time_value));
txtCalculate.setText(final_calculate);
} catch (JSONException e) {
e.printStackTrace();
}
}
@Override
public void onFailure(Call<String> call, Throwable t) {
Log.e("ERROR",t.getMessage());
}
});
}
catch (Exception ex) {
ex.printStackTrace();
}
}
解决方案
推荐阅读
- docker - Azure 容器注册表:得到“无法在 unix:///var/run/docker.sock 连接到 Docker 守护程序。docker 守护程序是否正在运行?”
- python - 如何检索 data_value 中的内容?在 python 中使用硒?
- r - 在 R Shiny 中过滤,选择输入到 textOutput
- pointers - 如何在 Rust 中使用内部指针实现可重定位数据?
- java - 重新启用屏幕截图在带有手势导航的 android 10 上不起作用
- hyperledger-fabric - Fabic:问题连接被拒绝 7050
- javascript - BST的空间复杂度是多少?
- node.js - 我想在 mongodb 和 nodejs 中获取过去 7 天内火花最多的所有用户
- excel - excel中的双重依赖下拉列表
- pandas - 数据框分配在嵌套 for 循环中不起作用