使用 openURL 从 ios 应用跳转到百度地图应用

using openURL to jump to Baidu Map app from within an ios app

我正在使用以下 API :

[[UIApplication sharedApplication] openURL: options: completionHandler: ];

openURL 的参数由以下示例格式字符串生成:

@"baidumap://map/direction?origin=latlng:%f,%f | name:我的位置&destination=latlng:%f,%f|name:终点&mode=driving"

应用运行时运行流畅,但调用baidumap失败

已将匿名函数附加到 completionHandler :

^(BOOL success) { if (success) NSLog(@"Invoke success = 1"); else NSLog(@"Invoke success = 0"); }

通过“BOOL 成功”传入的增量始终为 0。

我怀疑问题出在格式字符串上。

希望熟悉百度地图的朋友API能帮帮我

如 baidumap 网站所述,您需要进行一些转义:

NSString *urlString = [[NSString stringWithFormat:@"baidumap://map/direction?origin=latlng:%f,%f|name:我的位置&destination=latlng:%f,%f|name:终点&mode=driving",currentLatitude, currentLongitude,_shopLat,_shopLon] stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding] ;

并给出来源和目的地的地理坐标