Preview 2.0 is now in Public Beta!
Read the Announcement

@nativescript/directions

Installation

npm install @nativescript/directions

Usage

Importing

Once you have installed the plugin, import and create an instance of the Directions class.

import { Directions } from '@nativescript/directions'

const directions = new Directions()

Checking for support

To check if the device has a Maps application installed, call the available method.

directions.available().then((avail: boolean) => {
  console.log(avail ? 'Yes' : 'No')
})

To open the Google (Android) or Apple (iOS) Maps app with the desired directions, call the navigate method.

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)
    }
  )

API

Method(s)

NameReturn TypeDescription
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.

AddressOptions

NameTypeDescription
latnumberOptional: The latitude. Ignored if address' is set.
lngnumberOptional: The longitude. Ignored if address' is set.
addressstringOptional: The address of the direction. For multiple addresses, add them to the string separating them with a comma.
;'driving' | 'transit' | 'bicycling' | 'walking'
NameTypeDescription
fromAddressOptionsOptional: The starting point for the navigation.

If this option is not passed, the current location of the user will be used.
toAddressOptions | 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'.
iosiOSOptionsOptional: iOS-specific settings.
androidAndroidOptionsOptional: Android-specific settings.
useUniversalSyntaxbooleanOptional: 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.
typeNavigateToOptionsTypeOptional: The mode of reaching to the destionation.

Note that if there's an ocean in between from and to you won't be able to get directions, don't blame this plugin for that 😁.

iOSOptions

NameTypeDescription
preferGoogleMapsbooleanOptional: 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.
allowGoogleMapsWebbooleanIf 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.

AndroidOptions

NameTypeDescription
newTaskbooleanOptional: Indicates whether to start directions as new task.

License

Apache License Version 2.0