最后更新时间: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()
NavigatorRide navigatorRide = NavigatorZygote.with(context).navigator(NavigatorRide.class);
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());
NavigatorLayerViewRide viewRide = new NavigatorLayerViewRide(context);
layerRide.addViewLayer(viewRide);
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();
有帮助
没帮助