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

相关内容

热门资讯

必备科技!pokermaste... 必备科技!pokermaster破解版(辅助挂)切实真的是有挂(有挂方针辅助方法)1、上手简单,内置...
专业讨论!HH平台挂(辅助挂)... 专业讨论!HH平台挂(辅助挂)总是存在有挂(存在有挂辅助软件)1、下载好脚本下载之后点击打开,先需要...
教程辅助!wepoker辅助透... 教程辅助!wepoker辅助透视软件(辅助挂)果然是有挂(存在有挂辅助插件)1、免费辅助多个强度级别...
一分钟了解!wepoker免费... 一分钟了解!wepoker免费辅助器(辅助挂)果然存在有挂(竟然有挂辅助技巧)1、该软件可以轻松地帮...
总算了解!wepoker底牌透... 总算了解!wepoker底牌透视脚本(辅助挂)竟然是有挂(确实有挂辅助攻略)1、辅助软件下载优化,底...
让我来分享经验!wpk辅助哪里... 让我来分享经验!wpk辅助哪里买(辅助挂)一贯存在有挂(证实有挂辅助技巧)1、模拟器是什么优化,俱乐...
总算明白!wejoker开挂(... 总算明白!wejoker开挂(辅助挂)真是是有挂(有挂详细辅助教程)1)有没有挂:进一步探索有辅助吗...
信息共享!pokemmo手机版... 信息共享!pokemmo手机版修改器(辅助挂)竟然存在有挂(有挂教程辅助脚本)1、下载好透视辅助下载...
玩家必备科技!wepoker有... 玩家必备科技!wepoker有辅助插件吗(辅助挂)都是存在有挂(竟然有挂辅助软件)1、免费脚本咨询教...
最新研发!德普之星辅助工具如何... 最新研发!德普之星辅助工具如何设置(辅助挂)竟然是有挂(确实有挂辅助技巧)1、用户打开应用后不用登录...