gpt4 book ai didi

ios - 以编程方式打开苹果 map

转载 作者:搜寻专家 更新时间:2023-10-30 22:22:09 25 4
gpt4 key购买 nike

我想在我自己的 Swift 应用程序中打开 Apple map 应用程序,但我只有邮政编码、城市和街道。我没有坐标。我研究了很多,但只有使用协调信息的方法。

最佳答案

您可以将您的地址信息作为 URL 参数传递到用于打开 map 应用程序的 URL 中。假设您希望 map 应用以白宫为中心打开。

UIApplication.sharedApplication().openURL(NSURL(string: "http://maps.apple.com/?address=1600,PennsylvaniaAve.,20500")!)

map 应用打开时在搜索字段中显示难看的查询字符串,但它显示了正确的位置。请注意,搜索查询中没有城市和州,只有街道地址和邮政编码。

根据您的需要,一个可能更好的方法是使用 CLGeocoder 获取您拥有的地址信息的 CLLocation .

let geocoder = CLGeocoder()
let str = "1600 Pennsylvania Ave. 20500" // A string of the address info you already have
geocoder.geocodeAddressString(str) { (placemarksOptional, error) -> Void in
if let placemarks = placemarksOptional {
print("placemark| \(placemarks.first)")
if let location = placemarks.first?.location {
let query = "?ll=\(location.coordinate.latitude),\(location.coordinate.longitude)"
let path = "http://maps.apple.com/" + query
if let url = NSURL(string: path) {
UIApplication.sharedApplication().openURL(url)
} else {
// Could not construct url. Handle error.
}
} else {
// Could not get a location from the geocode request. Handle error.
}
} else {
// Didn't get any placemarks. Handle error.
}
}

关于ios - 以编程方式打开苹果 map ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33787653/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com