This method gets the FCM DeviceToken from the SDK.
Roam.getDeviceToken()
Roam.getDeviceToken();
Check location permission
Check whether your app has location permission. Returns a boolean, which is true if location permission has been granted or false otherwise.
Roam.checkLocationPermission()
Roam.checkLocationPermission();
Check Location Services
Check if the device has location services enabled. This method returns a boolean, which is true if the location services are on and false otherwise.
Roam.checkLocationServices()
Roam.checkLocationServices();
Check Background Location Permission
This utility method checks whether your app has background location permissions. It returns a boolean as true if background location permission has been granted, or false otherwise.
Roam.checkBackgroundLocationPermission()
Roam.checkBackgroundLocationPermission();
Request Location Permissions
Call this method to request the user to enable location permissions.
This method should be used only if you need to update the current location of the device with better accuracy. Using this method consistently will consume more battery.
The higher the accuracy, the longer the response time. In some cases, it can take up to 30 seconds depending on the GPS signal strength.
Parameter
Description
DesiredAccuracy
RoamTrackingMode.DesiredAccuracy.HIGH or RoamTrackingMode.DesiredAccuracy.MEDIUM or
RoamTrackingMode.DesiredAccuracy.LOW
Logout
Logout from Roam SDK using the logout() method.
NOTE - You need to reinitialize the SDK to login again.
When running the SDK on Android 6 (and higher), it is recommended to ask the user to disable battery optimization for your application. This ensures that location tracking continues to work when the device is in Doze mode.
Moreover, on Android Pie, disabling battery optimization prevents Adaptive Battery from bucketing your app based on usage and restricting background processing, which can impact the detection quality of the SDK.
After explaining the benefits of disabling battery optimization, call the disableBatteryOptimization() method of the Roam class.
Roam.disableBatteryOptimization()
Roam.disableBatteryOptimization();
This will trigger a system dialog asking the user to allow disabling battery optimization for your app.