Я пытаюсь получить название компании от CLLocation
.Я могу получить точный адрес улицы путем обратного геокодирования CLLocation
, но не могу получить название предприятия, поскольку свойство name
в CLPlacemark
является просто адресом.
Iпытался:
- Доступ к свойству
name
в CLPlacemark
: возвращает адрес улицы - Доступ к свойству
areasOfInterest
в CLPlacemark
: возвращает ноль - Использование
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.
})