LMGeocoderSwift
LMGeocoderSwift is a simple wrapper for geocoding and reverse geocoding, using both Google Geocoding API and Apple iOS Geocoding Framework.
Simple wrapper for geocoding and reverse geocoding, using both Google Geocoding API and Apple iOS Geocoding Framework.
Features
- Wrapper for Geocoding and Reverse geocoding with blocked-based coding.
- Use both Google Geocoding API and Apple iOS Geocoding Framework.
Requirements
- iOS 8.0 or higher
- Swift 5.0
Installation
LMGeocoderSwift is available through CocoaPods. To install
it, simply add the following line to your Podfile:
pod 'LMGeocoderSwift'
Objective-C Version
https://github.com/lminhtm/LMGeocoder
Usage
Geocoding
LMGeocoder.shared.geocode(addressString, service: .AppleService) { (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))"
}
}
}
Reverse Geocoding
LMGeocoder.shared.reverseGeocode(coordinate, service: .AppleService) { (results, error) in
// Update UI
if let address = results?.first, error == nil {
DispatchQueue.main.async {
self.addressLabel.text = address.formattedAddress ?? "-"
}
}
}
Cancel Geocode
LMGeocoder.shared.cancelGeocode()
Example
To run the example project, clone the repo, and run pod install
from the Example directory first.