CLGeocoder()。geocodeAddressString()从区域zip中找不到位置

时间:2019-07-23 21:35:37

标签: ios swift clgeocoder

我正在尝试使用CLGeocoder()。geocodeAddressString()在用户键入邮政编码后自动填充表单中的字段。我的代码适用于美国50个州的邮政编码,但是现在我们尝试添加地区(APO / FPO,维尔京群岛,波多黎各等),在搜索这些邮政编码时,该函数会出错。

//var zip = "00901" //Puerto Rico
var zip = "10012"   //NY, NY

CLGeocoder().geocodeAddressString(zip, completionHandler: { (placemarks, error) in
    if let err = error {
        print("CLGeocoder error: \(String(describing: err))")
    }
    if let addresses = placemarks {
        if addresses.count > 0 {
            let address = addresses[0]
            print("Address is \(address)")
        }
    }
})

从NY,NY邮政编码开始,输出为:

Address is 10012, New York, NY  10012, United States @ <+40.72581550,-73.99797500> +/- 100.00m, region CLCircularRegion (identifier:'<+40.72077310,-74.00063510> radius 1503.89', center:<+40.72077310,-74.00063510>, radius:1503.89m)

而PR邮政编码仅返回:

CLGeocoder error: Error Domain=kCLErrorDomain Code=8 "(null)"

0 个答案:

没有答案