A plugin that allows you to launch the Google Maps app, if it's installed on the device, with some directions. For more information, visit Directions action.
To install the plugin, run the following command in the root directory of your app.
npm install @nativescript/directions
To launch Google Maps with the desired directions, call the navigate
method on Directions
instance passing it a NavigateToOptions object.
import { Directions } from '@nativescript/directions'
const directions = new Directions()
directions
.navigate({
from: {
lat: 52.215987,
lng: 5.282764
},
to: [
{
address: 'Hof der Kolommen 34, Amersfoort, Netherlands'
},
{
address: 'Aak 98, Wieringerwerf, Netherlands'
}
],
type: 'walking',
ios: {
preferGoogleMaps: true,
allowGoogleMapsWeb: true,
useUniversalSyntax: true
},
android: {
newTask: true
}
})
.then(
() => {
console.log('Maps app launched.')
},
error => {
console.log(error)
}
)
If you need to check if the Google Maps mobile application is installed on the device, call the available
method.
const directions = new Directions()
directions.available().then((avail: boolean) => {
console.log(avail ? 'Yes' : 'No')
})
The Directions
class has the following two methods:
Method | Returns | Description |
---|---|---|
available() | Promise<boolean> | Checks if the device has the Maps application installed. |
navigate(options: NavigateToOptions) | Promise<void> | Opens the native Maps app with a predefined from and to address and other optional settings. |
Property | Type | Description |
---|---|---|
from | AddressOptions | Optional: The starting point for the navigation. If this option is not passed, the current location of the user will be used. |
to | AddressOptions | Array<AddressOptions> | The destination of the navigation. If it's an array of addresses, then the last item is the destination, the others become 'waypoints'. |
ios | iOSOptions | Optional: iOS-specific settings. |
android | AndroidOptions | Optional: Android-specific settings. |
useUniversalSyntax | boolean | Optional: If true , this opens Google Maps using the universal syntax rather than the comgooglemaps:// url scheme. Use this if Google Maps does not load correctly on iOS, the Universal Syntax is now preferred. |
type | NavigateToOptionsType | Optional: The mode of reaching to the destionation. |
Note that if there's an ocean in between
from
andto
you won't be able to get directions, don't blame this plugin for that 😁.
Name | Type | Description |
---|---|---|
lat | number | Optional: The latitude. Ignored if address ' is set. |
lng | number | Optional: The longitude. Ignored if address ' is set. |
address | string | Optional: The address of the direction. For multiple addresses, add them to the string separating them with a comma. |
;'driving' | 'transit' | 'bicycling' | 'walking'
Name | Type | Description |
---|---|---|
preferGoogleMaps | boolean | Optional: Indicates whether to use Google Maps(if installed) instead of the iOS Maps. You might want to use Google Maps app because it supports waypoints. |
allowGoogleMapsWeb | boolean | If waypoints are passed in and Google Maps is not installed, you can either open Apple Maps and the first waypoint is used as the to-address (the rest is ignored), or you can set this option to true to open Google Maps on web so all waypoints are shown. |
Name | Type | Description |
---|---|---|
newTask | boolean | Optional: Indicates whether to start directions as new task. |
Apache License Version 2.0