反向地理编码是否需要 cellular/wifi?

Does reverse geocoding require cellular/wifi?

反向地理编码是否需要 cellular/wifi?我正在使用以下代码查找城市名称和邮政编码。此代码能否在有 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.")
        }
    })

是的,地理编码和反向地理编码都需要 Internet 连接。如果您打算在本地进行,您需要 GIS 软件和一个大型地理数据库,其中包含您要进行地理编码的区域的地理信息。

软件和数据库又大又贵。我不知道适用于移动设备的 GIS 软件 - 从移动设备上都在云端完成。

您在 iOS 上使用 GPS 但没有互联网时唯一能做的就是收集 lat/long 个位置。

顺便说一句,这与Swift无关。位置管理器是 iOS 的一部分,可从任何支持的语言调用。这不是 "Swift geocoding." 这是 iOS 核心位置地理编码。