AndroidStudio(Java)中使用地图方向API在两点之间找到路线
创始人
2024-08-21 11:30:16
0
  1. build.gradle 文件中添加如下代码:
    implementation 'com.google.maps:google-maps-services:0.5.0'
  1. AndroidManifest.xml 文件中添加地图 API 密钥:

  1. MainActivity.java 文件中添加如下代码:
import com.google.maps.DirectionsApi;
import com.google.maps.DirectionsApiRequest;
import com.google.maps.GeoApiContext;
import com.google.maps.model.DirectionsResult;
import com.google.maps.model.TravelMode;

public class MainActivity extends AppCompatActivity {

    private GeoApiContext mGeoApiContext;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        // 初始化 GeoApiContext,需要传入地图 API 密钥
        mGeoApiContext = new GeoApiContext.Builder()
                .apiKey("YOUR_API_KEY")
                .build();

        // 调用查询路线的方法
        getDirections();
    }

    private void getDirections() {
        DirectionsApiRequest request = DirectionsApi.getDirections(mGeoApiContext,
                "originAddress",
                "destinationAddress")
                .mode(TravelMode.DRIVING);

        try {
            DirectionsResult result = request.await();
            // 获取路线信息
            // Code your logic for obtaining and displaying the route here
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

注意替换 YOUR_API_KEYoriginAddressdestinationAddress。 4. 解析查询结果并在地图上显示路线。 这里展示一个简单的方法:使用 Polyline 在地图上显示路线

PolylineOptions line = new PolylineOptions();
List latLngList = new ArrayList();

List decodedPath = result.routes[0].overviewPolyline.decodePath();
for (com.google.maps.model.LatLng latLng : decodedPath) {
    latLngList.add(new LatLng(latLng.lat, latLng.lng));
}

line.addAll(latLngList);
line.width(12f);
line.color(Color.RED);

// 在地图上画出路线
map.addPolyline(line);

注:这里的 map 是指 GoogleMap 对象,需要先获得该对象(示例略)。

相关内容

热门资讯

第8分钟了解!闲逸手机麻将有挂... 第8分钟了解!闲逸手机麻将有挂的么(辅助挂)起初是有挂(专业辅助高科技教程)-哔哩哔哩;闲逸手机麻将...
第3分钟了解!大同麻将有挂(辅... 第3分钟了解!大同麻将有挂(辅助挂)总是有挂(专业辅助揭秘教程)-哔哩哔哩;亲,有的,ai轻松简单,...
七分钟了解!大宝苏北麻将挂(辅... 七分钟了解!大宝苏北麻将挂(辅助挂)素来是有挂(专业辅助介绍教程)-哔哩哔哩;大宝苏北麻将挂是一种具...
6分钟了解!财神十三张牌辅助器... 6分钟了解!财神十三张牌辅助器下载(辅助挂)从来真的有挂(专业辅助系统教程)-哔哩哔哩;是一款可以让...
八分钟了解!约战丹东麻将可以赢... 八分钟了解!约战丹东麻将可以赢(辅助挂)竟然有挂(专业辅助插件教程)-哔哩哔哩;1、很好的约战丹东麻...
1分钟了解!开心十三张辅助io... 您好:开心十三张辅助ios版这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用...
第五分钟了解!指尖辅助软件(辅... 第五分钟了解!指尖辅助软件(辅助挂)固有是有挂(专业辅助2025新版技巧)-哔哩哔哩;1、这是跨平台...
5分钟了解!闲玩暗宝外挂(辅助... 您好:闲玩暗宝外挂这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户的牌特别...
6分钟了解!乐山幺鸡麻将辅牌器... 6分钟了解!乐山幺鸡麻将辅牌器购买(辅助挂)原生存在有挂(专业辅助线上教程)-哔哩哔哩;乐山幺鸡麻将...
十分钟了解!jj斗地主控牌(辅... 十分钟了解!jj斗地主控牌(辅助挂)都是存在有挂(专业辅助详细教程)-哔哩哔哩;小薇(透视辅助)致您...