从CLPlacemark

时间:2019-04-21 18:11:29

标签: ios cllocation clgeocoder clplacemark

我正在尝试从CLLocation获得公​​司名称。我可以通过对CLLocation进行反向地理编码来获取确切的街道地址,但由于name上的CLPlacemark属性只是地址,因此无法获取商家名称。< / p>

我尝试过:

  • 访问name上的CLPlacemark属性:返回街道地址
  • 访问areasOfInterest上的CLPlacemark属性:返回nil
  • 使用MKLocalSearchCompleter,并将查询设置为街道地址返回街道地址
  • 在查询设置为街道地址的情况下使用MKLocalSearch不返回任何内容

奇怪的是,Apple Maps应用程序允许您搜索街道地址,并且大多数位置都会显示商户名称(并将该地址用作备用地址as seen here),但是我无法复制此地址公开的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.
        })

0 个答案:

没有答案