Skip to content

Flutter plugin for bringing Situm Indoor Positioning and wayfinding technology to hybrid apps

License

Notifications You must be signed in to change notification settings

situmtech/flutter

Repository files navigation

@situm/flutter

Situm Wayfinding for Flutter. Integrate plug&play navigation experience with floorplans, POIs, routes and turn-by-turn directions in no time. With the power of Situm.

License: MIT Pub Version Flutter

Getting Started

There is a comprehensive tutorial on how to set-up a new application using this plugin on the Situm documentation page.

Below you will find the basic steps to install and configure the plugin on your Flutter project. These steps have already been done for you in the example application of this repository, but they are required for other projects.

Running the example

Check the example/README file of this repository to create your first Flutter application using Situm Flutter.

Configure the plugin on your Flutter project

Install the plugin

To add the Situm dependency to your Flutter project, you can use the flutter pub add command. To add this dependency to your project, you can use the following command in your terminal:

flutter pub add situm_flutter

Set up your Situm credentials

Create a new config.dart file with your Situm credentials. You can use the contents of example/config.dart.example as example.

Follow the Wayfinding guide if you haven't set up a Situm account.

Android

  1. Add the ACCESS_FINE_LOCATION permission to your AndroidManifest.xml file if you have configured Situm SDK to use GPS:
  <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
  1. Set the minSdkVersion to 21 or later on your app's build.gradle file.

iOS

  1. Remove the "use_frameworks!" directive in the Podfile of your iOS project:

  2. Run pod install or pod update to bring the dependencies to your project.

  3. Declare the following permissions in your app's Info.plist file to successfully start positioning:

<key>NSLocationWhenInUseUsageDescription</key>
<string>Location is required to find out where you are</string>
<key>NSLocationAlwaysAndWhenInUseUsageDescription</key>
<string>Location is required to find out where you are</string>
<key>NSMotionUsageDescription</key>
<string>We use your phone sensors (giroscope, accelerometer and altimeter) to improve location quality</string>
  1. For offline support you will have to add the underlying web application's domain inside the entry WKAppBoundDomains on Info.plist as follows:
<key>WKAppBoundDomains</key>
<array>
	<string>map-viewer.situm.com</string>
</array>

Migrate from the old Situm Flutter Wayfinding plugin

The new Situm Flutter package breaks compatibility with the previous Situm Flutter Wayfinding plugin. Integrating the new version is simpler and more straightforward. If you want to migrate your application, follow the steps described in the Situm documentation.

Versioning

Please refer to CHANGELOG.md for a list of notable changes for each version of the plugin.

You can also see the tags on this repository.


Submitting contributions

You will need to sign a Contributor License Agreement (CLA) before making a submission. Learn more here.


License

This project is licensed under the MIT - see the LICENSE file for further details.


More information

More info is available at our Developers Page.


Support information

For any question or bug report, please send an email to [email protected]