Background mode iOS

We are building a time and attendance app that is using Estimote beacons track employee time and attendance. The app has to send information to the server while the iOS app is in the background mode.

At the moment, we implemented background fetch and remote notification to pull data from the device to the server. However, it seems that there is no guarantee that Apple will not kill the process while it is in the background mode.

What are alternative methods that we can use to accomplish our goal?

The usual way to go about it is—upon “onEnter” event from Estimote SDK / Core Location, note down the timestamp when user entered certain area, as denoted by the beacon’s presence. Then, upon “onExit”, compare the timestamp to “now”, and store the duration on the device or send it to a server. Would that work for you?