Требуется ли для обратного геокодирования сотовая связь / Wi-Fi?
Требуется ли для обратного геокодирования сотовая связь / Wi-Fi? Я использую следующий код, чтобы найти название города и почтовый индекс. Будет ли этот код работать в среде с подключением GPS, но без сотовой связи?
geoCoder.reverseGeocodeLocation(location, completionHandler: { (placemarks, error) -> Void in
print("REVERSE COMPLETED")
// Place details
var placeMark: CLPlacemark!
placeMark = placemarks?[0]
// Address dictionary
print(placeMark.addressDictionary)
// City
if let city = placeMark.addressDictionary!["City"] as? NSString {
print("You are in \(city)")
} else {
print("An error occured while fetching the CITY.")
}
// Zip code
if let zip = placeMark.addressDictionary!["ZIP"] as? NSString {
print("The zip code is \(zip)")
} else {
print("An error occured while fetching the ZIP code.")
}
})
1 ответ
Да, геокодирование и обратное геокодирование требуют подключения к Интернету. Если вы собираетесь делать это локально, вам нужно программное обеспечение ГИС и большая географическая база данных, содержащая географию области, в которой вы геокодируете.
Программное обеспечение и базы данных большие и дорогие. Я не знаю программного обеспечения ГИС для мобильных устройств - с мобильных устройств все это делается в облаке.
Единственное, что вы можете сделать на iOS с GPS, но без интернета, это собирать лат / длинные позиции.
Кстати, это не имеет никакого отношения к Swift. Менеджер местоположений является частью iOS и может вызываться из любого поддерживаемого языка. Это не "быстрое геокодирование". Это геокодирование iOS Core Location.