我正在尝试从CLLocation
. 我可以通过反向地理编码获得确切的街道地址CLLocation
,但无法获得企业名称,因为name
属性CLPlacemark
只是地址。
我努力了:
- 访问
name
属性CLPlacemark
:返回街道地址 - 在:上访问
areasOfInterest
属性返回 nilCLPlacemark
- 使用
MKLocalSearchCompleter
设置为街道地址的查询返回街道地址 - 使用
MKLocalSearch
设置为街道地址的查询不会返回任何内容
奇怪的是,Apple Maps 应用程序允许您搜索街道地址,并且大多数位置都会出现商家名称(并将地址用作后备,如此处所示),但我无法使用暴露的 API 复制此功能. MapKit 根本无法实现我想要的吗?
CLGeocoder().reverseGeocodeLocation(location, completionHandler: { (placemarks, error ) in
guard let placemarks = placemarks else {
fatalError("Error: failed to reverse geocode location. \(error?.localizedDescription ?? "")")
}
for placemark in placemarks {
print(placemark.name)
}
// Do something to get the *true* placemark name.
})