User Location Tracking
The Woosmap Geofencing SDK allows the tracking of users’ location data (latitude and longitude) by leveraging upon the native location capacity of each platform, Android or iOS.
When a user opens your app integrating the SDK, a modal popup is displayed to let him share his location. When the user allows the sharing, the device gathers information about all available sources of location information including Global Positioning System (GPS), nearby Wi-Fi hotspots, cell towers, and IP Address. This is commonly referred to as “Location Services”.
The SDK crosses the differences between Android and iOS and offers a simpler and customizable way to interact with those services.
Preset Tracking Profiles
According to in-app location collection parameters and allowed permissions from the user, location services may collect regularly with a higher accuracy, when the app is in use or not, and draining more battery. Depending on your use case, it can be required to get the best accuracy as possible with real-time updates but most often, it is not - or not at every moment of the customer journey. The SDK lets developers activate the most appropriate tracking profile from three different pre-built options.
Passive Tracking: with lower accuracy and lower frequency of location updates and low power battery usage.
Visits Tracking: tracking medium accuracy, useful to track user’s stops and Zone of Interest.
Live Tracking: with higher accuracy and higher frequency of location updates and draining the battery more quickly.
Tracking Profiles can be adapted and toggled during the customer journey from one to the other. For example, a fast-food chain app might want to set a Live Tracking profile when a user has just finalized a Click & Collect order, then stop tracking when he picked up the order.
Custom Tracking Profile
It is now possible to use your own tracking profile by creating a Json file and play with tracking parameters to build a suitable profile. In addition you can externalize the Json file to make it dynamic and adjust some parameters without release a new version of your mobile application.