1.地圖不能地位;
原因是你現(xiàn)在項(xiàng)目的百度地圖初始化時(shí)需要用到Key韭寸,是你以前項(xiàng)目的Bundle Identifier申請(qǐng)的,與你現(xiàn)在的不相符合,你到百度地圖上再去申請(qǐng)一個(gè)就好氨距。
詳見(jiàn)請(qǐng)到打開(kāi)下面鏈接到官方文檔中查看
http://lbsyun.baidu.com/index.php?title=iossdk/guide/key
2.打開(kāi)百度地圖進(jìn)行導(dǎo)航時(shí),返回的是以前的APP棘劣;看到問(wèn)題就知道是白名單的設(shè)置問(wèn)題俏让;但是和其他的設(shè)置不同的是,這個(gè)需要到plist文件中和代碼去實(shí)現(xiàn)茬暇; ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?步驟如下:
1)到工程的plist文件下面設(shè)置你的URL Schemes;可能還有朋友不知道URL Schemes到底是什么首昔,我先大概解釋一下:
我們所知道的URL Schemes 是由兩個(gè)單詞組成的,
URL我就不多解釋了糙俗,相信你們都了解勒奇;eg:http://www.apple.com
Schemes英文翻譯是計(jì)劃,規(guī)劃的意思巧骚,在這里表示的是一個(gè) URL 中的一個(gè)位置——最初始的位置赊颠,即 ://之前的那段字符格二。比如 http://www.apple.com 這個(gè)網(wǎng)址的 Schemes 是 http
URL的規(guī)劃,到底是什么意思呢竣蹦?
在以本地應(yīng)用為主的 iOS 上顶猜,我們可以像定位一個(gè)網(wǎng)頁(yè)一樣,用一種特殊的 URL 來(lái)定位一個(gè)應(yīng)用甚至應(yīng)用里某個(gè)具體的功能痘括。而定位這個(gè)應(yīng)用的长窄,就應(yīng)該這個(gè)應(yīng)用的 URL 的 Schemes 部分,也就是開(kāi)頭兒那部分纲菌。比如短信挠日,就是 sms:
URL Schemes 使用詳解 - 少數(shù)派 ? URL Schemes詳解
回到正題
到plist文件中打開(kāi)URL types,將item0的URL Schems打開(kāi)翰舌,加一項(xiàng)進(jìn)去
然后到程序里面需要跳轉(zhuǎn)的地方肆资,添加代碼
NSURL *appUrl = [NSURL URLWithString:@"wxxt://abcdef"]; //wxxt為目標(biāo)App跳轉(zhuǎn)的key
if([[UIApplication sharedApplication] canOpenURL:appUrl]){
[[UIAppliactioin sharedApplication] openURL:appUrl];
}
你也可以直接在項(xiàng)目的全局搜索[UIAppliactioin sharedApplication] openURL://解釋:APP之間的跳轉(zhuǎn)都是通過(guò)這個(gè)方法來(lái)的。把上個(gè)APP定義的URL Schems全部替換過(guò)來(lái)灶芝;
eg:
以百度地圖導(dǎo)航為例的話郑原,如下
if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"baidumap://"]]){
//初始化調(diào)啟導(dǎo)航時(shí)的參數(shù)管理類
BMKNaviPara* para = [[BMKNaviPara alloc]init];
//指定導(dǎo)航類型
para.naviType = BMK_NAVI_TYPE_NATIVE;
//初始化終點(diǎn)節(jié)點(diǎn)
BMKPlanNode* end = [[BMKPlanNode alloc]init];
//指定終點(diǎn)經(jīng)緯度
CLLocationCoordinate2D coor;
coor.longitude = [longitude doubleValue];
coor.latitude =[latitude doubleValue];
end.pt = coor;
//指定終點(diǎn)名稱
end.name =[dicInfo objectForKey:@"ah1906"];
//指定終點(diǎn)
para.endPoint = end;
//指定返回自定義scheme
para.appScheme = @"wxxt://";
//調(diào)啟百度地圖客戶端導(dǎo)航
[BMKNavigation openBaiduMapNavigation:para];
return;
}else{
if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"iosamap://"]]){
NSString *stringURL = [NSString stringWithFormat:@"iosamap://navi?sourceApplication=你的APP名字&backScheme=wxxt(plist文件中定義的urlShemes)://&poiname=%@&lat=%@&lon=%@&dev=1&style=0",poiname,lat,lon,nil];
NSString* encodedString = [stringURL stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSURL *url = [NSURL URLWithString:encodedString];
[[UIApplication sharedApplication] openURL:url];
}else{
/*百度app鏈接地址*/
NSString *url=@"https://itunes.apple.com/us/app/bai-du-tu-yu-yin-dao-hang/id452186370?mt=8";
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:url]];
}
}