Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

mapwize-sdk-react-native

Mapwize89MIT1.1.7TypeScript support: included

Integrate Mapwize Indoor Maps & Wayfinding in your React Native apps

react-native, ios, android, mapwize, indoor, maps, wayfinding

readme

Mapwize SDK for React Native

This library allows developers to integrate Mapwize Indoor Maps & Wayfinding in their React Native mobile application.

Integration

Run the following commands in your project directory

yarn add mapwize-sdk-react-native

yarn install

iOS

The minimum supported iOS version is 10.0. The minimum supported MapwizeSDK version is 3.2.1.

  • MapwizeSDK requires that you add use_frameworks! in your Podfile.

  • Run pod install in your ios directory

  • Add the MGLMapboxMetricsEnabledSettingShownInApp key in your info.plist and set it to YES

Android

The minimum supported Android sdk version is 21. The minimum supported mapwize-sdk-android version is 3.4.2.

in your Project build.gradle file, you have to add :

allprojects {
    repositories {
        ...
        maven { url 'https://www.jitpack.io' }
        maven { url 'https://maven.mapwize.io'}
    }
}

Mapwize API Key

You'll need a Mapwize API key to load the Map and allow API requests.

To get your own Mapwize API key, sign up for a free account at mapwize.io. Then within the Mapwize Studio, navigate to "API Keys" on the side menu.

Creating your first map

The MapwizeMap component requires at least a MapwizeConfiguration props. The MapwizeConfiguration contains your Mapwize api key that will be used to display data on the map.

const mapConfig = new MapwizeConfiguration('YOUR_API_KEY');
render() {
    return <MapwizeMap
        style={{flex: 1}}
        mapwizeConfiguration={mapConfig}/>
}

All instantiated maps are independent. You can add multiple maps with different MapwizeConfiguration in your application.

Using the map methods

You can use the MapwizeViewRef returned by the onMapLoaded property to run any map related method.

const mapConfig = new MapwizeConfiguration('YOUR_API_KEY');
render() {
    return <MapwizeMap
        style={{flex: 1}}
        mapwizeConfiguration={mapConfig}
        onMapLoaded={(mapwizeMap: MapwizeViewRef) => mapwizeMap.setFloor(3)}
      />
}

Using the remote api

You can access to the Mapwize remote api methods using CreateMapwizeAPI to create an instance of MapwizeApi.

const mapConfig = new MapwizeConfiguration('YOUR_API_KEY')
const api: MapwizeApi = CreateMapwizeAPI(mapConfig)

Using the offline manager

You can access the Mapwize offline Manger methods using CreateOfflineManager to create an instance of OfflineManager.

const mapConfig = new MapwizeConfiguration('YOUR_API_KEY')
const offlineManager: OfflineManager = CreateOfflineManager(mapConfig)

Documentation

Please refer to the Mapwize SDK React Native documentation on docs.mapwize.io

Contributing

While this project is mainly maintained by the Mapwize team, all contributions are welcome. Do not hesitate to open an issue or create a pull request on this project.

Thanks

We would like to thank the Cardiweb team for their contribution to this React Native integration.

Evolution and support

For any question or request, please contact us at support@mapwize.io.

License

MIT

changelog

Mapwize SDK for React Native Changelog

Version 1.1.7

  • Adding setCookie to support authentication using React Native fetch API.

Version 1.1.6

  • Adding MarkerOptions to allow more control over the Marker appearances.
  • Updating iOS Mapwize SDK to 3.6.2
  • Updating Android Mapwize SDK to 3.8.5

Version 1.1.5

  • Updating iOS Mapwize SDK to 3.6.1
  • Updating Android Mapwize SDK to 3.8.3

Version 1.1.4

  • Fixing getOfflineRegion method error
  • Updating Android Mapwize SDK to 3.7.2

Version 1.1.3

  • Adding mainColor to MapOptions
  • Updating iOS Mapwize SDK to 3.5.2
  • Updating Android Mapwize SDK to 3.7.1

Version 1.1.2

  • Fixing dependencies issue do to last xcode version

Version 1.1.1

  • Fixing a bug on the OnCameraIdle event

Version 1.1.0

  • Fixing FollowUserMode on iOS
  • Triggering the onCameraChange event along with the OnCameraIdle event
  • Updating iOS Mapwize SDK to 3.4.5
  • Updating Android Mapwize SDK to 3.6.4

Version 1.0.9

  • Fixing floor object in PlaceDetails
  • Updating Mapwize Android SDK to 3.6.3 and Mapwize iOS SDK to 3.4.4
  • Using number instead of Number

Version 1.0.8

  • Adding place details API
  • Adding onLanguagesChange event
  • Adding resetNorth method
  • Adding onCameraChange event

Version 1.0.7

  • Fixing booleans values not sent to RN

Version 1.0.6

  • Fixing gradle sdk version not found

Version 1.0.5

  • Updating iOS Mapwize SDK to 3.3.0
  • Updating Android Mapwize SDK to 3.5.1
  • Adding selectedPlace Prop

Version 1.0.4

  • Fixing getDirectionModes returns null values bug

Version 1.0.3

  • Adding getZoom and zoomTo methods

Version 1.0.2

  • Fixing a bug in MapOptions

Version 1.0.1

  • Adding the tilt, the bearing and the compass options to the MapOptions
  • Updating the Mapwize Android sdk to 3.4.4

Version 1.0.0

  • Publishing of first stable release of the Mapwize SDK for React Native

Version 0.0.4

  • Fixing eslint warnings
  • Fixing main queue setup

Version 0.0.3

  • Fixing setup on Android and iOS clients
  • Adding automatic generated documentation
  • Fixing some typescript errors

Version 0.0.2

  • Initial publishing of the Mapwize SDK for React Native