LMGeocoderSwift is a simple wrapper for geocoding and reverse geocoding, using both Google Geocoding API and Apple iOS Geocoding Framework.
- Wrapper for Geocoding and Reverse geocoding with blocked-based coding.
- Use both Google Geocoding API and Apple iOS Geocoding Framework.
- iOS 8.0 or higher
- Swift 5.0
LMGeocoderSwift is available through CocoaPods. To install it, simply add the following line to your Podfile:
pod 'LMGeocoderSwift'
https://github.com/lminhtm/LMGeocoder
Geocoder.shared.geocodeAddressString(addressString, service: .apple, alternativeService: .google) { (results, error) in
// Update UI
if let address = results?.first, error == nil {
DispatchQueue.main.async {
self.coordinateLabel.text = "(\(address.coordinate?.latitude ?? 0), \(address.coordinate?.longitude ?? 0))"
}
}
}
Geocoder.shared.reverseGeocodeCoordinate(coordinate, service: .apple, alternativeService: .google) { (results, error) in
// Update UI
if let address = results?.first, error == nil {
DispatchQueue.main.async {
self.addressLabel.text = address.formattedAddress ?? "-"
}
}
}
Geocoder.shared.cancelGeocode()
To run the example project, clone the repo, and run pod install
from the Example directory first.
LMGeocoderSwift is available under the MIT license. See the LICENSE file for more info.
Minh Nguyen