iOS SDK 15.6.7,
Android SDK 15.5.3,
Hello Screen Dynamic States,
Bluedot Cordova plugin 4.0.1,
Bluedot Xamarin Android wrapper 15.5.2,
Bluedot Xamarin iOS wrapper 15.6.6,
Bluedot React Native wrapper 2.3.0,
const metadata = { 'hs_orderId': 'Order Id', 'hs_Customer Name': 'Customer Name' }; BluedotPointSdk.instance.setCustomEventMetaData(metadata);
const zoneIdToDisable = "your_zone_id"; const disableZone = true; BluedotPointSdk.instance.setZoneDisableByApplication(zoneIdToDisable, disableZone);
// GeoTriggering String channelId = 'Your channel Id'; String channelName = 'Your channel Name'; String androidNotificationTitle = 'Your notification title'; String androidNotificationContent = 'Your notification content'; int androidNotificationId = 123; // Will be -1 by default if set to null. BluedotPointSdk.instance.geoTriggeringBuilder() .androidNotification(channelId, channelName, androidNotificationChannel, androidNotificationContent, androidNotificationId) .start().then((value) { //Handle geo triggering started successfully debugPrint('Geo-triggering has been started'); }).catchError((error) { //Handle error when start geo-triggering debugPrint('Failed to start geo-triggering. Error $error'); });
// Tempo String destinationId = 'Your destination Id'; String channelId = 'Your channel Id'; String channelName = 'Your channel Name'; String androidNotificationTitle = 'Your notification title'; String androidNotificationContent = 'Your notification content'; int androidNotificationId = 123; // Will be -1 by default if set to null. BluedotPointSdk.instance .tempoBuilder() .androidNotification(channelId, channelName, androidNotificationTitle, androidNotificationContent, androidNotificationId) .start(destinationId) .then((value) { // Successfully started tempo tracking debugPrint('Tempo has been started successfully'); }).catchError((error) { // Failed to start tempo tracking, handle error here debugPrint('Failed to start tempo. Error $error'); });
The background location usage indicator (Blue Bar) is an iOS feature that allows an app to access location data when the user has selected While using the app location authorization and the app is in the background.
The background location usage indicator will be displayed as a blue pill or bar at the top of the screen – either behind the clock or across the status bar (the event display changes between iPhone models). This notification lets the user know that an app is accessing location data.
Background location usage indicator should be enabled when usage requires location updates even when the App is running in background and the user has granted the While using the app location authorization.
BluedotPointSdk.instance.allowsBackgroundLocationUpdates(true);
if (await Permission.locationAlways.isGranted) { BluedotPointSdk.instance.allowsBackgroundLocationUpdates(false); }
It may be beneficial to switch the background location usage indicator on and off during app operation to maximise location data availability during mission-critical flows.
For example:
On an app that handles ordering and pickup there may be value in starting Bluedot Geo-triggering on app start without the background location usage indicator enabled in order to power a marketing use case when the user grants Always location authorization or is actively using the app. When the user places an order and there is greater necessity and value in collecting location data to maximise the likelihood the user is detected upon arrival at the collection point, the background location usage indicator should be enabled. Upon completion of the order and collection process, the background location usage indicator should be disabled, removing unauthorized background location data collection and the visible indicator.
Example steps to implement: