Skip to main content

Polestar Location Source

The Polestar (Radio signal-based positioning system) Location Source provides indoor location based on the analysis of radio signals transmitted and received inside buildings.

Requirements

Check common requirement.

Installation

Check common installation.

Permissions

Polestar Location Source requires Location and Bluetooth permissions. Declare them in your app Manifest as follows:

<!-- NORMAL PERMISSIONS: explicit user confirmation not needed -->

<!-- Internet connectivity (for data synchro) -->
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

<!-- Used for BLE-based location -->
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />

<!-- Used for WiFi-based location -->
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />

<!-- SENSITIVE PERMISSIONS: user will be prompted for acceptation by Android OS -->

<!-- access to OS Loc / GPS and BLE sensor (since Android 6)-->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

<uses-permission android:name="android.permission.BLUETOOTH_SCAN" />

Setting Up the Polestar Location Source

Once you have the MapData, create a PolestarLocationSource instance, then assign it to Map or/and GeoAR as follows:

fun setupLocationSource(mapData: MapData) {
val polestarLocationSource = PolestarLocationSource(requireContext(), "emulator", mapData) // change 'emulator' to your polestar API key here

// assign it to the map if you are using WemapMapSDK
mapView.locationManager.apply {
locationSource = polestarLocationSource
isEnabled = true
}

// or/and assign it to GeoARView if you are using WemapGeoARSDK
geoARView.locationManager.locationSource = polestarLocationSource
}

Examples

For additional examples and sample implementations of WemapSDKs, visit the official GitHub repository.

Clone the repository and follow the README instructions to run the sample application.