日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

iOS调用第三方导航和线路规划

發(fā)布時間:2024/1/8 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 iOS调用第三方导航和线路规划 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

線路規(guī)劃:

https://blog.csdn.net/qq_19979539/article/details/51938995

?

百度地圖:baidumap:

高德地圖:iosamap:

騰訊地圖:qqmap:

谷歌地圖:comgooglemapsurl:

系統(tǒng)地圖就不用這么麻煩了,直接這樣就好:

CLLocationCoordinate2D endCoor =坐標(biāo);? ? ? ??

MKMapItem *currentLocation = [MKMapItem mapItemForCurrentLocation];

?MKMapItem *toLocation = [[MKMapItem alloc] initWithPlacemark:[[MKPlacemark alloc] initWithCoordinate:endCoor addressDictionary:nil]];

toLocation.name = [NSString stringWithFormat:@"到 %@", 目的地];

?[MKMapItem openMapsWithItems:@[currentLocation, toLocation]

?? ? ? ? ? ? ? ? ? ? ? launchOptions:@{MKLaunchOptionsDirectionsModeKey: MKLaunchOptionsDirectionsModeDriving,MKLaunchOptionsShowsTrafficKey: [NSNumber numberWithBool:YES]}];

其他地圖的打開如下:

百度地圖:

NSString *stringURL = [NSString stringWithFormat:@"baidumap://map/direction?origin=%f,%f&destination=%f,%f&mode=driving",user.userLocCoord2D.latitude, user.userLocCoord2D.longitude,

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?目的地.latitude, 目的地.longitude];

[[UIApplication sharedApplication] openURL:url]


高德地圖:

NSString *urlString = [[NSString stringWithFormat:@"iosamap://path?sourceApplication=%@&backScheme=%@&sname=%@&dname=%@&dev=0&m=0&t=0&sid=BGVIS1&did=BGVIS2&dlat=%lf&dlon=%lf",@"APP名稱", @"iosamap", @"我的位置",目的地,endCoor.latitude, endCoor.longitude] stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

[[UIApplication sharedApplication]openURL:[NSURL URLWithString:urlString]];

騰訊地圖:

NSString *urlString =[[NSString stringWithFormat:@"qqmap://map/routeplan?type=drive&from=我的位置&to=%@&tocoord=%lf,%lf&policy=1&referer=tengxun",目的地,endCoor.latitude,endCoor.longitude] stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

?[[UIApplication sharedApplication] openURL:[NSURL URLWithString:urlString]];

?

谷歌地圖:

NSString *urlString = [[NSString stringWithFormat:@"comgooglemapsurl://www.google.com/maps/preview/@%lf,%lf,6z",endCoor.latitude, endCoor.longitude] stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

?[[UIApplication sharedApplication]openURL:[NSURL URLWithString:urlString]];
---------------------
作者:塵清_iOS
來源:CSDN
原文:https://blog.csdn.net/qq_19979539/article/details/51938995

目的地導(dǎo)航:

https://www.cnblogs.com/jyking/p/4939637.html

蘋果:

1.

NSString?*urlString?=?[[NSString?stringWithFormat:@"http://maps.apple.com/?daddr=%f,%f&saddr=slat,slng",coordinate.latitude,?coordinate.longitude]?stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]

2.

MKMapItem?*currentLocation?=?[MKMapItem?mapItemForCurrentLocation];

MKMapItem?*toLocation?=?[[MKMapItem?alloc]?initWithPlacemark:[[MKPlacemark?alloc]?initWithCoordinate:coordinate?addressDictionary:nil]]; [MKMapItem?openMapsWithItems:@[currentLocation,?toLocation]? ??????????????? launchOptions:@{MKLaunchOptionsDirectionsModeKey:?MKLaunchOptionsDirectionsModeDriving, ??????????????????????????????? MKLaunchOptionsShowsTrafficKey:?[NSNumber?numberWithBool:YES]}]; 百度: NSString?*urlString?=?[[NSString?stringWithFormat:@ "baidumap://map/direction?origin={{我的位置}}&destination=latlng:%f,%f|name=目的地&mode=driving&coord_type=gcj02" ,coordinate.latitude,?coordinate.longitude]?stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

要注意幾點:

1. origin={{我的位置}}

這個是不能被修改的 不然無法把出發(fā)位置設(shè)置為當(dāng)前位置

2. destination=latlng:%f,%f|name=目的地

name=XXXX name這個字段不能省略 否則導(dǎo)航會失敗 而后面的文字則可以隨便填

3. coord_type=gcj02

coord_type允許的值為bd09ll、gcj02、wgs84 如果你APP的地圖SDK用的是百度地圖SDK 請?zhí)頱d09ll 否則 就填gcj02 wgs84

高德: NSString?*urlString?=?[[NSString?stringWithFormat:@ "iosamap://navi?sourceApplication=%@&backScheme=%@&lat=%f&lon=%f&dev=0&style=2" ,appName,urlScheme,coordinate.latitude,?coordinate.longitude]?stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

要注意幾點:

1. sourceApplication=%@&backScheme=%@

sourceApplication代表你自己APP的名稱 會在之后跳回的時候顯示出來 所以必須填寫 backScheme是你APP的URL Scheme 不填是跳不回來的喲

2. dev=0

這里填0就行了,跟上面的gcj02一個意思 1代表wgs84 也用不上

?

谷歌:

?

NSString?*urlString?=?[[NSString?stringWithFormat:@"comgooglemaps://?x-source=%@&x-success=%@&saddr=&daddr=%f,%f&directionsmode=driving",appName,urlScheme,coordinate.latitude,?coordinate.longitude]?stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

轉(zhuǎn)載于:https://www.cnblogs.com/yuxiaoyiyou/p/10062314.html

總結(jié)

以上是生活随笔為你收集整理的iOS调用第三方导航和线路规划的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。