iOS app应用调用百度地图app的 方法

    在app中若需要使用手机自带的地图,需要在app之间进行通信,以百度地图为例。

  1.先找到app中的info.plist 文件这个文件包含了app的基本信息,在其下新增一个项为URL types,在URL types下加一个子项,点开item 发现已经有一个URL identifier了,再加一个并列的 URL Schemes, 在URL identifier 后填上com.baidu.sdk ,在 URL Schemes 的子项后填上baidumapSdk ,这样就配置好了所需要的 schemes


iOS app应用调用百度地图app的 方法_第1张图片

//加上 URL Schemes

iOS app应用调用百度地图app的 方法_第2张图片


2. 在所需要调用百度地图app的地方 写上

       [[UIApplicationsharedApplication] openURL:[NSUR URLWithString:@"baidumap://map/place"]];

@"baidumap://map/place" 就是app调用百度地图的Url


  如果需要传入参数的时候

  可以在url 加上参数 如下,具体可参考百度的官方链接 http://developer.baidu.com点击打开链接

 baidumap://map/direction?origin=中关村&destination=五道口&mode=driving®ion=北京   //本示例是通过该URL启动地图app并进入北京市从中关村到五道口的驾车导航路线图
 baidumap://map/place/search?q=银行®ion=北京  

示例代码如下

  NSString *start = @"天安门";

  NSString *end = @"鸟巢";

  NSString *city = @"北京";

  NSString *way = @"driving";

  NSString *urlStr = [NSString stringWithFormat:@"baidumap://map/direction?origin=%@&destination=%@&mode=%@®ion=%@",start,end,way,city];

    * 注意关键参数要正确

   [[UIApplication sharedApplication] openURL:[NSURL URLWithString:[urlStr  stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]]];



  以上就能够在你的app中调起百度地图的app了,当然模拟器中没有百度地图app的  可以用真机试试哦。


--关于调用其他的 如电话,短信 浏览器这些

下面也简单的写一下

电话: 

[[UIApplicationsharedApplication] openURL:[NSURLURLWithString:@"tel://123124323(这里是电话号码)"]];

短信:

[[UIApplication sharedApplicationopenURL:[NSURL URLWithString:@"sms://123124323(这里是电话号码)"]];

游览器:

[[UIApplication sharedApplicationopenURL:[NSURL URLWithString:@"http://baidu.com(这里是网址)"]];





你可能感兴趣的:(iOS,/app间调用,iOS,百度地图,app)