批量算路
1. 导入头文件
#import <NavinfoKit/NavinfoKit.h>
2. 配置APIKEY
参考工程配置说明。
3. 定义 NavinfoRouteSearch
定义主算路对象 NavinfoRouteSearch,并继承搜索协议<NavinfoRouteQueryDelegate>。
4. 构造 NavinfoRouteSearch
构造主搜索对象 NavinfoRouteSearch,并设置代理。
NavinfoRouteSearch * routeSearch = [[NavinfoRouteSearch alloc] init]; routeSearch.delegate = self;
5. 设置发起批量算路参数
其中orig(起点坐标)vias(途经点坐标集可以为空)dest(终点坐标)query(算路类型)。
- (id)initBulkQueryWithorigs:(NSArray < NavinfoLonlat * > * _Nonnull)origs dests:(NSArray <NavinfoLonlat * > * _Nonnull)dests;
6. 发起批量算路
通过调用 NavinfoSearchRoute 的 startSearch 方法发起算路查询。
[search startSearchWith:query];
7. 在回调中处理数据
当查询成功时,会进到回调函数,通过回调函数,可获取算路的结果。
说明:
通过 response.routes获取批量方案集
- (void)onRouteSearch:(NavinfoRouteSearch * _Nonnull)routeSearch result:(NavinfoRouteResult * _Nullable)result error:(NSError * _Nullable)error { NSLog(@"----> onRouteSearch"); }
8. 处理失败查询
当检索失败时,Error 会返回,通过该回调函数获取产生的失败的原因。
- (void)onRouteSearch:(NavinfoRouteSearch * _Nonnull)routeSearch result:(NavinfoRouteResult * _Nullable)result error:(NSError * _Nullable)error { NSLog(@"----> onRouteSearch"); }
运行程序,效果图如下。