Capacitor plugin for native forward and reverse geocoding
The most complete doc is available here: https://capgo.app/docs/plugins/nativegeocoder/
npm install @capgo/nativegeocoder
npx cap syncthen import this into your code:
import { NativeGeocoder } from '@capgo/nativegeocoder';Apple requires privacy descriptions to be specified in Info.plist for location information:
NSLocationAlwaysAndWhenInUseUsageDescription(Privacy - Location Always Usage Description)NSLocationWhenInUseUsageDescription(Privacy - Location When In Use Usage Description)
Read about Configuring Info.plist in the iOS Guide for more information on setting iOS permissions in Xcode
The IOS implementation require internet
This API requires the following permissions be added to your AndroidManifest.xml:
<!-- Geolocation API -->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-feature android:name="android.hardware.location.gps" />This API requires a Google API key to be set in the apiKey field of the ForwardOptions or ReverseOptions interfaces.
There is no way to use this plugin on the web without a Google API key.
The return data is limited to the data available from the native API on the device, as example formatted_address is not available in web implementation, as it's not available in the native API.
reverseGeocode(options: ReverseOptions) => Promise<{ addresses: Address[]; }>Convert latitude and longitude to an address
| Param | Type |
|---|---|
options |
ReverseOptions |
Returns: Promise<{ addresses: Address[]; }>
Since: 0.0.1
forwardGeocode(options: ForwardOptions) => Promise<{ addresses: Address[]; }>Convert an address to latitude and longitude
| Param | Type |
|---|---|
options |
ForwardOptions |
Returns: Promise<{ addresses: Address[]; }>
Since: 0.0.1
getPluginVersion() => Promise<{ version: string; }>Get the native Capacitor plugin version
Returns: Promise<{ version: string; }>
| Prop | Type |
|---|---|
latitude |
number |
longitude |
number |
countryCode |
string |
countryName |
string |
postalCode |
string |
administrativeArea |
string |
subAdministrativeArea |
string |
locality |
string |
subLocality |
string |
thoroughfare |
string |
subThoroughfare |
string |
areasOfInterest |
string[] |
| Prop | Type | Description |
|---|---|---|
latitude |
number |
latitude is a number representing the latitude of the location. |
longitude |
number |
longitude is a number representing the longitude of the location. |
useLocale |
boolean |
Localise the results to the given locale. |
defaultLocale |
string |
locale is a string in the format of language_country, for example en_US. |
maxResults |
number |
Max number of results to return. |
apiKey |
string |
Only used for web platform to use google api |
resultType |
string |
Only used for web platform to use google api |
| Prop | Type | Description |
|---|---|---|
addressString |
string |
address is a string of the address to be geocoded. |
useLocale |
boolean |
Localise the results to the given locale. |
defaultLocale |
string |
locale is a string in the format of language_country, for example en_US. |
maxResults |
number |
Max number of results to return. |
apiKey |
string |
Only used for web platform to use google api |
To @sebastianbaar and his work on cordova-plugin-nativegeocoder what he made was very inspiring
