iOS SwiftLocation库:如何从位置获取地标?

时间:2018-10-23 08:05:32

标签: ios swift xcode location

我正在使用此库来获取位置: https://github.com/malcommac/SwiftLocation

在我使用库的版本2之前,获取地标就这么简单:

Location.getPlacemark(forLocation: location, success: { (placemark) -> Void in
    guard let receivedPlacemark = placemark.first else {
        return
    }
    logger.debug("Retrieved placemark: \(receivedPlacemark.locality ?? "-")")
    self.currentPlacemark = receivedPlacemark
}, failure: { (error) -> Void in
    logger.error(error)
})

问题在于,现在我无法在新版本的库中找到getPlacemark方法(它们在版本3上)。在他的自述文件中搜索,我找不到获取地标的功能。

这是使用库的版本3现在可以获取位置的方法:

Locator.currentPosition(accuracy: .neighborhood, onSuccess: { location in
    self.currentLocation = location                              
}) { (err, lastLoc) in
    logger.error(err)
}

任何对此问题的帮助将非常感激

1 个答案:

答案 0 :(得分:0)

感谢@Larme在评论中的帮助

这是获取地标的方法:

Locator.location(fromCoordinates: location.coordinate, using: nil, onSuccess: { places in
    guard let receivedPlacemark = places.first?.placemark else {
        return
    }
    self.currentPlacemark = receivedPlacemark    
}) { err in
    logger.error(err)
}