Skip to content

Latest commit

 

History

History
131 lines (101 loc) · 4.7 KB

README.md

File metadata and controls

131 lines (101 loc) · 4.7 KB

@nativescript/directions

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.

Contents

Installation

To install the plugin, run the following command in the root directory of your app.

npm install @nativescript/directions

Use @nativescript/directions

Launch Google Maps with 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);
		}
	);

Check if the Google Maps app is installed

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

API

Directions methods

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.

NavigateToOptions

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 and to you won't be able to get directions, don't blame this plugin for that 😁.

AddressOptions

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.

NavigateToOptionsType

'driving' | 'transit' | 'bicycling' | 'walking'

iOSOptions

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.

AndroidOptions

Name Type Description
newTask boolean Optional: Indicates whether to start directions as new task.

License

Apache License Version 2.0