0.0.4 • Published 6 years ago

react-native-map-direction v0.0.4

Weekly downloads
13
License
-
Repository
-
Last release
6 years ago

react-native-map-direction

This open source library have few applications using Google Maps API.

MapViewer:

Display direction between two geolocation.

Installation:

npm i react-native-map-direction --save

General Usage:

import MapViewer from ‘react-native-map-direction’;

API KEY:

Go to https://developers.google.com/maps/documentation/ios-sdk/get-api-key and https://developers.google.com/maps/documentation/android-api/signup to get your keys for both iOS and Android.

Make sure that Google Maps Android API and Google Maps SDK for iOS are enabled for the current project.

https://console.developers.google.com/apis/library/maps-android-backend.googleapis.com/ https://console.developers.google.com/apis/library/maps-ios-backend.googleapis.com

Without an API key the Google Maps map won't render anything.

Where to ADD API KEY:

Add your API key to your manifest file in “ android/app/src/main/AndroidManifest.xml “

You will only need to add this meta-data tag, but make sure it's a child of application <application   > <meta-data     android:name="com.google.android.geo.API_KEY"     android:value="YOUR_API_KEY_HERE"/> </application   >

Issues:

If there are any Map related issues and Gradle, then follow this link :

https://itnext.io/install-react-native-maps-with-gradle-3-on-android-44f91a70a395

Customizable Features:

  • Polyline: Color and Width
  • Marker: Color
  • View: height and width

Dependencies Used:

  • ‘react-native-maps’
  • ‘@mapbox/polyline’

Usage:

import MapViewer from 'react-native-map-direction'; class MapComponent extends Component {   constructor(props) {   super(props);   this.state = {   geoCode: {     startLoc: {       lat: 8.192738,       lon: -77.714723     },     destinationLoc: {       lat: 70.196917       lon: -148.419491     }
  },   screenDimension: {     width: Dimensions.get('window').width, // width     height: Dimensions.get('window').height //height   },   pinColors: {     start: 'green',     destination: 'red'   },   polyline: {     strokeColor: 'navy',     strokeWidth: 4   }   }   }   render() {     return (       <MapViewer
          geoCode={this.state.geoCode}           screenDimension={this.state.screenDimension}           pinColors={this.state.pinColors}           polyline={this.state.polyline}       />     )   }; } export default MapComponent;

Component API:

Props
PropsTypeNote
geoCodegeoCode: {   startLoc: {     lat: Number,     lon: Number   },   destinationLoc: {     lat: Number,     lon: Number   } }The start and destination geolocation in terms of latitude and longitude.
screenDimensionscreenDimension: {   width: Number,   height: Number }Height and width of the view in which the Map will be shown
pinColorspinColors: {   start: ‘color_name’,   destination: ‘color_name’   }Colors for start and destination marker
polylinepolyline: {   strokeColor: ‘color_name’,   strokeWidth: Number   }Color and line width for the polyline