快速开始

最后更新时间:2026-03-09

初始化

NavigatorZygote.with(context.getApplicationContext()).init(
    NavigatorConfig.builder()
        .setUserAgreedPrivacy(true)         // 设置同意隐私协议
        .setDeviceId("custom_device_id")    // 设置自定义的设备ID,用于问题排查
        .setDeviceModel(Build.MODEL)        // 设置设备型号,帮助问题排查
        .setDeveloperKey("developer_key")   // 设置开发者KEY
    .build()
);
NavigatorZygote.with(context.getApplicationContext()).start()

创建管理类

1.创建骑行 NavigatorRide

NavigatorRide navigatorRide = NavigatorZygote.with(context).navigator(NavigatorRide.class);

2.创建导航地图层 NavigatorLayerRootRide

NavigatorLayerRootRide layerRide;
// 1.通过NavigatorViewStub布局创建骑行地图层
NavigatorViewStub navigatorViewStub = findViewById(R.id.navigator_view_stub);
navigatorViewStub.setTravelMode(NavRouteReqParam.TravelMode.TravelModeRiding);
navigatorViewStub.inflate();
layerRide = navigatorViewStub.getNavigatorView();
// 2.或者手动创建骑行地图层,并添加到你自己的ViewGroup
// layerRide = NavigatorZygote.with(context).view(NavigatorLayerRootRide.class);
// viewGroup.addView(layerRide.getView());

3.创建默认面板 NavigatorLayerViewRide,并添加到导航地图层

NavigatorLayerViewRide viewRide = new NavigatorLayerViewRide(context);
layerRide.addViewLayer(viewRide);

4.将导航地图层绑定到Navigator

navigatorRide.bindView(layerRide);

路径规划

navigatorRide.searchRoute(
        RoutePlanRequester.Companion.newBuilder(NavRouteReqParam.TravelMode.TravelModeRiding)
                .start(new NavSearchPoint(39.984108, 116.308082))
                .end(new NavSearchPoint(39.896938, 116.316483))
                .build(),
        (RoutePlanRequestCallback<NavNonMotorRoute>) (navRoutePlan, error) -> {
            if (error != null) {
                // handle error
                return;
            }
            if (navRoutePlan != null) {
                // handle result
                return;
            }
        }
);

开始导航

// 使用算路结果中合法的路线ID开始导航
navigatorRide.startNavigation(routeId);
// 使用算路结果中合法的路线ID开始模拟导航
navigatorRide.simulator()
        .setConfig(SimulatorConfig
                .builder(SimulatorConfig.Type.SIMULATE_LOCATIONS_ALONG_ROUTE)
                .setSimulateSpeed(55)  // 设置模拟导航速度
                .build()
        )
        .setEnable(true);
navigatorRide.startNavigation(routeId);

结束导航

// 结束导航
navigatorRide.stopNavigation();
本页内容