The Swrve Geo uses native iOS and Android Libraries to receive location updates.
It is optimized to run in a battery-friendly manner.
Using native libraries also ensures we are in full compliance with the rules for location tracking on iOS and Android.
The accuracy depends on the device and how it is set up.
Device Make/Model and whether GPS/WiFi/Data are enabled are the main factors.
We recommend setting a min radius of 100m for Swrve Geoplaces.
Lower radius may work fine on some devices but those with lower accuracy may not perform well.
Possible problems on lower accuracy devices:
- They may miss the geoplace completely
- They may start jumping in and out of a Geoplace even though they are standing still. This can cause excessive battery drain.
Here are the native iOS and Android libraries we use for handling location updates:
Region Monitoring: https://developer.apple.com/documentation/corelocation/monitoring_the_user_s_proximity_to_geographic_regions?language=objc
Significant Location Change: https://developer.apple.com/documentation/corelocation/getting_the_user_s_location/using_the_significant-change_location_service?language=objc
Geofencing API: https://developer.android.com/training/location/geofencing.html