第一步:在使用百度导航之前,我们需要在百度地图开放平台上下载导航的 sdk,共85.8m,网速不好的同学可提前准备好。
第二步:引入导航所需的系统包
将audiotoolbox.framework、imageio.framework、coremotion.framework、corelocation.framework、coretelephony.framework、mediaplayer.framework、avfoundation.framework、systemconfiguration.framework、libstdc++6.0.9.dylib这几个framework添加到工程中。
第三步:将touchjson库设置为非arc编译选项,也就是在 compile sources 中设置编译方式为:-fno-objc-arc
第四步:勾选媒体后定位后台模式
第五步:添加头文件,发起导航
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
#import "bncoreservices.h"// 引入地图导航头文件 #pragma mark - bnnavirouteplandelegate 发起导航 - ( void )startnavi { //节点数组 nsmutablearray *nodesarray = [[nsmutablearray alloc] initwithcapacity:2]; //起点 bnrouteplannode *startnode = [[bnrouteplannode alloc] init]; startnode.pos = [[bnposition alloc] init]; startnode.pos.x = 113.936392; startnode.pos.y = 22.547058; startnode.pos.etype = bncoordinate_baidumapsdk; [nodesarray addobject:startnode]; //终点 bnrouteplannode *endnode = [[bnrouteplannode alloc] init]; endnode.pos = [[bnposition alloc] init]; endnode.pos.x = 114.077075; endnode.pos.y = 22.543634; endnode.pos.etype = bncoordinate_baidumapsdk; [nodesarray addobject:endnode]; //发起路径规划 [bncoreservices_routeplan startnavirouteplan:bnrouteplanmode_recommend navinodes:nodesarray time :nil delegete:self userinfo:nil]; } #pragma mark #pragma mark - bnnaviuimanagerdelegate 算路成功回调 -( void )routeplandidfinished:(nsdictionary *)userinfo { nslog(@ "算路成功" ); //路径规划成功,开始导航 bn_navitypesimulator 默认模拟导航,bn_navitypereal 真机导航 [bncoreservices_ui shownaviui: bn_navitypesimulator delegete:self isneedlandscape:yes]; } |
有关ios百度地图导航开发功能小编就给大家介绍这么多,后续还会持续更新,敬请关注服务器之家网站!