Adding a Start/Stop Time for Geofencing monitoring

My suggestion would be to use region monitoring to check-in & check-out.


Example:


- Arrive to work at 9:30 AMlocationManager:didEnterRegion: called

- During execution time that you're alive save the time and that it was an entry

- Leave for lunch at 11 AM locationManager:didExitRegion: fired

- During execution time that you're alive save the time and that it was an exit

- Arrive to back from lunch at 12:00 PMlocationManager:didEnterRegion: called

- During execution time that you're alive save the time and that it was an entry

- Leave for home at 5 PM locationManager:didExitRegion: fired

- During execution time that you're alive save the time and that it was an exit


User then at end of day looks at their device, and your app.. Do some math and post results to the UI.


Since the app is flash frozen most of the day, and during the hours of 6 PM - 10 AM you're most likely not at work.. then you would not be waken up to make any recordings anyways.

This sounds like a perfect case for Visit Monitoring to solve.


Visit monitoring allows an app to receive entry and exit notifications for specific locations the user visits frequently or for long periods of time such as home, work, or a favorite coffee shop.


Visit Monitoring also is the most power efficient Core Location service you can choose, as your app will be tapping into the ambient location data the system is already monitoring.


You can find more about this service here: https://developer.apple.com/library/ios/documentation/CoreLocation/Reference/CLVisit_class/

I have used the region monitoring API To Check-in and Check-Out.But have some considerations


a) How energy efficient is Region Monitoring.

b) Can i have the fine control to start/stop a geofence at a particular time even when the app is not in use.

c) Sometimes i get temporal region crossing notifications even though i'm still inside the boundary.

I started with Region Minitoring,but as you suggested i need to checkout CLVisit also.But have a few considerations like

a) Can i have the fine control to start/stop a geofence at a particular time even when the app is not in use.

b) If the company is in 10th floor how can i define a particular vertical accuracy?

Geofency does all those things already: https://itunes.apple.com/app/id615538630

Adding a Start/Stop Time for Geofencing monitoring
 
 
Q