iOS開發之百度地圖導航


http://www.cnblogs.com/Jepson1218/p/5290095.html


本篇主要講述百度地圖的導航功能:

第一步:在使用百度導航之前,我們需要在百度地圖開放平臺上下載導航的 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];
}
複製代碼



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章