Reputation: 5376
I have been using IBM Presence Insights to record indoor locations of my users' mobile devices. I am using a beacon infrastructure and used the Presence Insights SDK to build an app.
Will my app/phone range for beacons and send location updates to Presence Insights even when the app is in the background? What about if the app is not running? I need to know this behavior for both Android and iOS.
Upvotes: 0
Views: 226
Reputation: 5376
Did some investigation. The ability to range in the background is different for different operating systems.
For iOS:
iOS can monitor for beacons in the background using "region" monitoring. This is different than ranging for specific beacons because it monitors for a large region / group of beacons instead. This method does not drain the battery of the phone nearly as quickly and offers more privacy to the user. This is the recommended way to build a location based app from Apple and is what we do in the SDK.
Region monitoring works when the app is in the background, foreground, or killed entirely, see this link for more information: https://community.estimote.com/hc/en-us/articles/203356607-What-are-region-Monitoring-and-Ranging-
For Android:
We are working to document all of this appropriately. There is currently a lot of active development in this area which makes keeping things up to date difficult.
Upvotes: 2
Reputation: 3053
The Presence Insights SDK for iOS and Android does not include any code specific to running your app in a background state - The way you write your application(s) will determine if and how they run in the background.
Here is some good info for iOS and Android on setting up background processes, as well as the docs for the mobile application SDKs. There are tons of options.
A word of wisdom - you can kill someone's battery if you are not careful with setting up background processes.
Hope this helps
Upvotes: 0