Testing an app that monitors a region then wakes up to do some processing. I cant seem to find anywhere documentation that says how long I have to do work in the background before the watchdog timer kicks in and kills the app.
I saw a document (even I believe official one) where most of the timings related to background was shown. However, I can't find it right now (I will try to find it and post here).
Based on my experience, I believe application is awoken for 10 seconds while significant location change. Also, the interesting thing that if you try to do call backgroundTimeRemaining it will return +INFINITY for these 10 seconds (generally speaking this API is designed only for beginBackgroundTaskWithExpirationHandler:)
Update 1
Sorry. I wasn't able to find that document. I have a feeling that it was remove/updated by Apple, because before (about 6 month ago) I hit it quite often while searching information on iOS backgrounding.
I found couple of interesting things. One is here. It's related to VOIP callback.
It says: "Your handler has a maximum of 10 seconds to perform any needed tasks and exit. If it does not exit before time expires, the application is suspended."
Also, the same 10 seconds are mentioned here for Bluetooth:
"Upon being woken up, the app has around 10 seconds to process the data."
I believe underlying mechanics for location manager wake up, VOIP and Bluetooth wake up are exactly the same and all of them grant 10 seconds of execution time/
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With