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 对象,需要先获得该对象(示例略)。

相关内容

热门资讯

透视开发!wejoker辅助机... 透视开发!wejoker辅助机器人(透视)开挂辅助攻略(都是是真的挂)-哔哩哔哩1、进入到wejok...
透视规律!约局吧德州可以透视吗... 透视规律!约局吧德州可以透视吗,黑侠破解wepoker,法子教程(其实存在有挂)-哔哩哔哩1、约局吧...
透视智能!hhpoker辅助(... 透视智能!hhpoker辅助(透视)开挂辅助技巧(一直真的有挂)-哔哩哔哩1、让任何用户在无需hhp...
透视有挂!如何下载德普之星辅助... 透视有挂!如何下载德普之星辅助软件,wejoker开挂,绝活教程(都是真的有挂)-哔哩哔哩运如何下载...
透视输赢!wejoker黑侠辅... 透视输赢!wejoker黑侠辅助器(透视)开挂辅助神器(一贯有挂)-哔哩哔哩wejoker黑侠辅助器...
透视能赢!约局吧能不能开挂,w... 透视能赢!约局吧能不能开挂,wepokerplus透视脚本免费,指南书教程(原来真的有挂)-哔哩哔哩...
透视开发!模拟器打开hhpok... 透视开发!模拟器打开hhpoker(透视)开挂辅助软件(原来是真的挂)-哔哩哔哩1、玩家可以在模拟器...
透视总结!wepoker祈福有... 透视总结!wepoker祈福有用吗,xpoker辅助助手,项目教程(一直真的是有挂)-哔哩哔哩1、每...
透视打法!聚星ai辅助工具收费... 透视打法!聚星ai辅助工具收费多少(透视)开挂辅助工具(本来有挂)-哔哩哔哩1、聚星ai辅助工具收费...
透视好友!佛手在线大菠萝为什么... 透视好友!佛手在线大菠萝为什么都输,德州hhpoker脚本,学习教程(真是有挂)-哔哩哔哩1、每一步...