ios导航sdk | 百度地图api sdk-凯发k8官方旗舰厅

浏览器版本低!无法浏览完整内容,建议升级或更换浏览器。
高级功能
下载开发文档

导航sdk bnstrategymanagerprotocol提供了丰富的配置接口,可以设置算路、导航中的部分功能,具体如下:

车牌相关

支持设置驾车、货车、摩托车车牌,需要在算路前设置。

1. 设置驾车车牌(普通车牌 新能源车牌)
/**
* 设置驾车车牌(bntruckcartypecommon类型)
* @param carnumber 车牌号, 格式如:"粤b00000"
*/
-(void)synccarnumber:(nsstring*)carnumber;
/**
* 设置驾车车牌(支持普通和新能源)
* @param carnumber 车牌号, 格式如:"粤b00000"
* @param type 车牌号, 格式如:"bntruckcartypecommon、bntruckcartypeenegry
*/
-(void)synccarnumber:(nsstring*)carnumber cartype:(bntruckcartype)type;
/**
* 设置驾车车牌(支持普通和新能源)
* @param carmodel 车牌model
*/
-(void)synccarmodel:(bmcarinfomodel*)carmodel;
-(void)setcarplateinfo {
//设置车牌号码 两种都支持 默认普通车
/* 方式1 [bnaviservice_strategy synccarnumber:@"粤b86544"];*/
/*方式2 [bnaviservice_strategy synccarnumber:@"粤b86544" cartype:bntruckcartypecommon];*/
bmcarinfomodel*carinfo =[[bmcarinfomodel alloc] init];
carinfo.carnumber= @"粤b86544";
carinfo.truckcartype=bntruckcartypecommon;
[bnaviservice_strategy synccarmodel:carinfo];
}
2. 设置货车车牌
/**
* 设置货车信息
*/
-(void)synctruckinfomodel:(bmtruckinfomodel*)model;
// 设置货车信息
-(void)settruckinfo {
bmtruckinfomodel*model =[[bmtruckinfomodel alloc] init];
// 货车类型的车辆牌照的类型
model.truckcartype=bntruckcartypecommon;
model.trucktype=bmtrucktypemicro;// 货车类型的车辆牌照的类型
model.powertype=bmtruckpowertypegasoline;// 动力类型
model.carnumber= @"京a66666";// 车牌号 例如:京b88888
model.emission=1*1000;// 排放标准 例如:国五 emission = 5
model.weight=2.565*1000;// 车重单位kg 0~100吨 例如:1吨 weight = 1 * 1000
model.load=1.73*1000;// 载重单位kg 0~100吨 例如:1吨 load = 1 * 1000
model.length=6*1000;// 车长单位mm 0~25米 例如:1米 length = 1 * 1000
model.width=2.15*1000;// 车宽单位mm 0~5米 例如:1米 width = 1 * 1000
model.height=3.5*1000;// 车高单位mm 0~10米 例如:1米 height = 1 * 1000
model.axlenumber=2;// 轴数 例如 3轴 axlenumber = 3;
model.platecolor=bntruckplatecolorgreen;// 车牌颜色
model.axleweight=2*1000;// 轴重单位kg 0~100吨 例如:1吨 weight = 1 * 1000
model.oilcost=13*1000;// 百公里油耗 毫升 0~150l 例如:百公里耗油20升 oilcost = 20 * 1000
[bnaviservice_strategy synctruckinfomodel:model];
}
3. 设置摩托车车牌
/// 设置摩托车车牌相关信息,不持久化保存
/// @param model 摩托车车牌
-(void)syncmotorinfomodel:(bnmotorinfomodel*)model;
-(void)setmotorinfomodel {
bnmotorinfomodel*model =[[bnmotorinfomodel alloc] init];
model.displacement=5343;//排放量
model.plate= @"粤bh3843";//车牌号码,粤bh4533
model.platetype=bnmotorplatetype_yellow;//车牌类型
model.powertype=bnmotorpowertype_oil;//能耗类型
[bnaviservice_strategy syncmotorinfomodel:model];
}
4. 获取驾车车牌
/**
* 获取驾车车牌(bntruckcartypecommon类型)
*/
-(nsstring*)getcarnumber;
/**
* 获取驾车车牌
*/
-(bmcarinfomodel*)getcarmodel;
[bnaviservice_strategy getcarnumber];
[bnaviservice_strategy getcarmodel];
5. 获取货车车牌
/**
* 获取货车信息
*/
-(bmtruckinfomodel*)gettruckinfomodel;
[bnaviservice_strategy gettruckinfomodel];
路线相关
1. 设置多路线导航模式。算路完成后默认可能会出多条路线,如果不需要多条路线,可以设置该值为no。
///是否开启多路线,需要在算路前设,默认yes
@property(nonatomic, assign)bool enablemultiroute;
[bnaviservice_strategy setenablemultiroute:yes];
2. 设置偏航回到指定路线(只支持货车导航)
///设置偏航后回到用户指定路线导航 /** 货车sdk偏航路线模式0 默认策略,1 偏航路线api提供,2 偏航回进入导航时选的路线*/
@property(nonatomic, assign) int yawspecifiedroutenavigation;
bnaviservice_strategy.yawspecifiedroutenavigation=1;
3. 设置是否使用途经点算路偏好

途经点算路偏好支持一次算路中,可以对本次算路的每个途经点设置算路偏好。

例如:算一条路线,分别从a->b->c->d->e,可以设置从a->b,b->c,c->d,d->e分别使用不同的算路偏好。

//是否使用途经点偏好算路 默认 是no。
//如开启途经点算路。起点可以添加偏好设置。
//路线偏好传入值为无效。起点没有设置偏好,默认设置智能推荐
//只有设置为yes 才启用途经点算路。只针对本次导航生效。
@property(nonatomic, assign)bool multiplepreferenceenable;
bnaviservice_strategy.multiplepreferenceenable=yes;
tts相关
1. 退出导航是否释放销毁tts
///退出导航的时候 设置是否 销毁tts 默认yes。设置为no tts会 占用部分内存不释放。需要开发者自己手动释放内存
@property(nonatomic, assign)bool exitnavidestroytts;
2. 是否使用ios系统自定义的tts能力播报
//是否使用ios 系统的tts库,默认为no,如果设置为yes,可以去掉导航sdk自带的tts库
@property(nonatomic, assign)bool usesystemtts;
自定义ui

只有货车/摩托车支持自定义ui,涉及的属性如下。

/// 底部工具栏 和 左右上报按钮 中间的间隙, 默认0
@property(nonatomic, assign)cgfloat toolbarviewtopspace;
/// 底部需要预留的高度, 用于填充自身控件默认0
@property(nonatomic, assign)cgfloat bottombuttonheight;
/// 车标偏移量
@property(nonatomic, assign)cgfloat navilocationoffset;
/// 货车 - 底部工具栏的y值
@property(nonatomic, assign, readonly)cgfloat truckbottombuttontop;

使用以下属性控制顶部区域高度。
toolbarviewtopspace

使用以下属性控制底部自定义区域高度。
bottombuttonheight

navilocationoffset=0是默认高度。
navilocationoffset 为正数车标往上。
navilocationoffset为负数车标往下。

使用以下属性获取标红视图的y坐标值。
truckbottombuttontop

导航中设置项

这部分是导航中的一些功能设置和开关,具体包括如下:

/// 日夜模式
@property(nonatomic, assign)bndaynight_cfg_type daynighttype;
/// 播报模式
@property(nonatomic, assign)bn_speak_mode_enum speakmode;
/// 诱导面板模式,仅驾车支持
@property(nonatomic, assign)bn_simple_guide_mode simpleguidemode;
/// 是否显示实景放大图
@property(assign, nonatomic)bool showliveexpandroadmap;
/// 显示智能比例尺开关
@property(nonatomic, assign)bool autolevelshow;
/// 显示到终点红线开关
@property(nonatomic, assign)bool redlineshow;
/// 小窗
@property(nonatomic, assign)bool showmaptinyview;
/// 是否支持更多设置功能,默认yes,仅货车/摩托车支持
@property(nonatomic, assign)bool supportmoresettings;
/// 导航设置面板是否开放路线偏好功能入口,默认yes,仅货车/摩托车支持
@property(nonatomic, assign)bool supportpreference;
/// 导航设置面板是否开放沿途检索功能入口,默认yes,仅货车支持
@property(nonatomic, assign)bool supportpoisearch;
/// 进入导航页面是否需要弹“已连接蓝牙...”toast,默认yes,使用内部tts播报时有效,否则返回no
@property(nonatomic, assign)bool showbluetoothtoast;
/// 是否支持蓝牙设置功能,默认yes,使用内部tts播报时有效,否则返回no
@property(nonatomic, assign)bool supportbluetoothsettings;
/// 是否支持ugc上报功能,默认yes,仅货车支持
@property(nonatomic, assign)bool supportugcreportbutton;
/// 是否显示区间测速
@property(nonatomic, assign)bool showintervalspeedview;
/// 是否显示高速信息面板
@property(nonatomic, assign)bool showhighwayinfopanel;
/// 是否显示主辅路切换
@property(nonatomic, assign)bool showmainauxiliarybutton;
/// 是否显示路线刷新
@property(nonatomic, assign)bool showrrefreshroutebutton;
/// 是否显示缩放按钮
@property(nonatomic, assign)bool showzoombutton;
/// 货车限行提示view
@property(nonatomic, assign)bool supporttruckrestrictionview;
#pragma mark simulator
/// 模拟器速度控制按钮
@property(nonatomic, assign)bool supportsimulatorspeedcontrol;
/// 模拟器暂停按钮
@property(nonatomic, assign)bool supportsimulatorpausebutton;
/// 全览按钮
@property(nonatomic, assign)bool supportviewallbutton;
///是否显示通知型消息
@property(nonatomic, assign)bool supportnoticemessage;
///是否显示干预性消息
@property(nonatomic, assign)bool supportintervenemessage;
///是否允许点击路况条。yes-允许,no-不允许,默认允许
@property(nonatomic, assign)bool tapbarchartviewenable;
///能避开拥堵时路况条是否显示“避开”。yes-显示。no-不显示。默认显示。
@property(nonatomic, assign)bool showavoidjamenable;

上一篇

基础功能

下一篇

驾车路线规划

本篇文章对您是否有帮助?

网站地图