百度地图SDK提供简单的接口调用,通过调起百度地图客户端,实现复杂的业务逻辑。
目前所支持的调起类型有:POI周边检索、POI详情检索、POI全景、步行线路规划、驾车线路规划、新能源车路线规划、货车路线规划、公交线路规划、驾车导航、新能源车导航、摩托车导航、货车导航、步行导航、骑行导航、步行AR导航。
使用调起百度地图客户端功能,必须在"Info.plist"中进行如下配置,否则不能调起百度地图客户端。
<key>LSApplicationQueriesSchemes</key><array><string>baidumap</string></array>
以公交线路规划调起百度地图为例,介绍具体使用方法:
调起百度地图客户端是SDK工具组件的的能力,需引入头文件:
#import <BaiduMapAPI_Base/BMKBaseComponent.h>#import <BaiduMapAPI_Utils/BMKUtilsComponent.h>
BMKOpenTransitRouteOption *option = [[BMKOpenTransitRouteOption alloc] init];//公交策略,默认:BMK_OPEN_TRANSIT_RECOMMAND(异常值,强制使用BMK_OPEN_TRANSIT_RECOMMAND)option.openTransitPolicy = BMK_OPEN_TRANSIT_RECOMMAND;//指定返回自定义schemeoption.appScheme = @"baidumapsdk://mapsdk.baidu.com";//调起百度地图客户端失败后,是否支持调起web地图,默认:YESoption.isSupportWeb = YES;//实例化线路检索节点信息类对象BMKPlanNode *start = [[BMKPlanNode alloc]init];//指定起点名称start.name = @"西直门";//指定起点经纬度start.pt = CLLocationCoordinate2DMake(39.90868, 116.204);//指定起点option.startPoint = start;//实例化线路检索节点信息类对象BMKPlanNode *end = [[BMKPlanNode alloc]init];//指定终点名称end.pt = CLLocationCoordinate2DMake(39.90868, 116.3956);//终点名称end.name = @"天安门";//终点节点option.endPoint = end;
NSInteger flag = [BMKOpenRoute openBaiduMapTransitRoute:option];if (flag == BMK_OPEN_NO_ERROR) {NSLog(@"调起百度地图客户端公交路线界面成功!");}
上一篇
下一篇
本篇文章对您是否有帮助?