iOS에서 URL 구성표로 Google Maps 또는 Apple Maps을 시작할 때 자동으로 탐색을 시작할 수 있나요?Google지도 및 Apple지도 URL 스키마로 자동 시작 탐색
둘 다에 대한 몇 가지 선택적 매개 변수가 있지만 사용자 입력없이 탐색을 시작하려면 아무 것도 표시되지 않습니다.
iOS에서 URL 구성표로 Google Maps 또는 Apple Maps을 시작할 때 자동으로 탐색을 시작할 수 있나요?Google지도 및 Apple지도 URL 스키마로 자동 시작 탐색
둘 다에 대한 몇 가지 선택적 매개 변수가 있지만 사용자 입력없이 탐색을 시작하려면 아무 것도 표시되지 않습니다.
다음은 참고 용으로 작성한 것입니다.하지만 사과의 경우 URL 스키마를 통해 탐색을 시작할 수있는 방법을 찾지 못했습니다.
+ (void)navigateToLocation:(CLLocation*)_navLocation {
if ([[UIApplication sharedApplication] canOpenURL:
[NSURL URLWithString:@"comgooglemaps://"]]) {
NSString *string = [NSString stringWithFormat:@"comgooglemaps://?daddr=%f,%f&directionsmode=driving",_navLocation.coordinate.latitude,_navLocation.coordinate.longitude];
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:string]];
} else {
NSString *string = [NSString stringWithFormat:@"http://maps.apple.com/?ll=%f,%f",_navLocation.coordinate.latitude,_navLocation.coordinate.longitude];
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:string]];
}
}
올바른지, Google과 Apple 모두 사용자 입력이 필요하지만 이동 버튼을 누르기 만하면됩니다.
당신은 시작과 끝 위치를 모두 지정하려면 다음 형식을 사용에 대한
comgooglemaps-x-callback://?saddr=&daddr=<Your Location>
%%이어야하며 공백을 사용하십시오. – htafoya
스위프트 3 헬퍼 클래스 :
애플지도 :
http://maps.apple.com/maps?saddr=Current%20Location&daddr=<Your Location>
Google지도를 Apple지도 또는 Google지도 탐색 시작
struct LinksHelper {
static func startNavigation(coordinate: CLLocationCoordinate2D) {
struct Links {
static let kGoogleMapsSchema = "comgooglemaps://"
static let kGoogleMaps = "\(kGoogleMapsSchema)?daddr=%f,%f&directionsmode=driving"
static let kAppleMaps = "https://maps.apple.com/?saddr=Current Location&daddr=%f,%f&z=10&t=s"
}
var path: String!
if let googleMapsSchemaUrl = URL(string:Links.kGoogleMapsSchema), UIApplication.shared.canOpenURL(googleMapsSchemaUrl) {
path = Links.kGoogleMaps
} else {
path = Links.kAppleMaps
}
guard let str = String(format: path, coordinate.latitude, coordinate.longitude).addingPercentEncoding(
withAllowedCharacters: .urlQueryAllowed) else {
return
}
guard let url = URL(string: str) else {
return
}
UIApplication.shared.openURL(url)
}
}
위도에지도 및 센터 위치를 엽니 다. 그러나 내비게이션을 시작하지 않습니다. ( – htafoya