IOS百度地图导航开发功能实现简述
程序员文章站
2023-12-01 20:17:22
以下通过图文并茂的方式给大家讲述百度地图导航开发功能:
第一步:在使用百度导航之前,我们需要在百度地图开放平台上下载导航的 sdk,共85.8m,网速不好的同学可提前准备...
以下通过图文并茂的方式给大家讲述百度地图导航开发功能:
第一步:在使用百度导航之前,我们需要在百度地图开放平台上下载导航的 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
第四步:勾选媒体后定位后台模式
第五步:添加头文件,发起导航
#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百度地图导航开发功能小编就给大家介绍这么多,后续还会持续更新,敬请关注网站!