1、判断手机里是否已经安装了百度地图或者高德地图:

        BOOL hasBaiduMap = NO;  
        BOOL hasGaodeMap = NO;  
          
        if ([[UIApplication sharedApplication]canOpenURL:[NSURL URLWithString:@"baidumap://map/"]]){  
            hasBaiduMap = YES;  
        }  
        if ([[UIApplication sharedApplication]canOpenURL:[NSURL URLWithString:@"iosamap://"]]){  
            hasGaodeMap = YES;  
        }    

 2、选择打开对应的地图进行导航:

        if ([@"使用百度地图导航" isEqualToString:title])  
        {  
            NSString *urlString = [[NSString stringWithFormat:@"baidumap://map/direction?origin=latlng:%f,%f|name:我的位置&destination=latlng:%f,%f|name:终点&mode=driving",currentLat, currentLon,_shopLat,_shopLon] stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding] ;  
              
            [[UIApplication sharedApplication]openURL:[NSURL URLWithString:urlString]];  
        }  
        else if ([@"使用高德地图导航" isEqualToString:title])  
        {  
            NSString *urlString = [[NSString stringWithFormat:@"iosamap://navi?sourceApplication=%@&backScheme=%@&poiname=%@&lat=%f&lon=%f&dev=1&style=2",@"app name", yourscheme, @"终点", _shopLat, _shopLon] stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];  
  
            [[UIApplication sharedApplication]openURL:[NSURL URLWithString:urlString]];  
        }      

 

 posted on 2016-03-02 17:04  花花0809  阅读(2190)  评论(0编辑  收藏  举报