This issue might be relevant:

https://github.com/tleyden/office-radar/issues/1#issuecomment-48780693

On Mon, Jan 19, 2015 at 1:06 PM, Martin Palatnik <[email protected]> wrote:

> Hi,
>
> In an app I'm working on I'm using Region monitoring and couchbase. When I
> enter the region, I need to save some information to the database and that
> info needs to be synced to the server ( I have a continuous push
> replication running) while running the app in the background. I'm setting
> suspended to NO to tell couchbase to perform the saving and syncing in the
> background.
>
> I have an important constraint: When the region is detected I have around
> 10 secs to perform that, otherwise I can request more time with
> beginBackgroundTaskWithExpirationHandler:
> <https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIApplication_Class/index.html#//apple_ref/occ/instm/UIApplication/beginBackgroundTaskWithExpirationHandler:>
>  as
> mentioned in Apple documentation.
>
> "In iOS, regions associated with your app are tracked at all times,
> including when the app isn’t running. If a region boundary is crossed while
> an app isn’t running, that app is relaunched into the background to handle
> the event. Similarly, if the app is suspended when the event occurs, it’s
> woken up and given a short amount of time (around 10 seconds) to handle the
> event. When necessary, an app can request more background execution time
> using the beginBackgroundTaskWithExpirationHandler:
> <https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIApplication_Class/index.html#//apple_ref/occ/instm/UIApplication/beginBackgroundTaskWithExpirationHandler:>
>  method
> of the UIApplication
> <https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIApplication_Class/index.html#//apple_ref/occ/cl/UIApplication>
>  class."
>
> In 3G conditions I found that the 10 secs are often not enough to perform
> the saving and sync to the remote server, so I need to use some extra time
> by using beginBackgroundTaskWithExpirationHandler:
> <https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIApplication_Class/index.html#//apple_ref/occ/instm/UIApplication/beginBackgroundTaskWithExpirationHandler:>.
>
> The problem I'm having is that the synchronization dies anyway after the
> 10 secs even if I use beginBackgroundTaskWithExpirationHandler:
> <https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIApplication_Class/index.html#//apple_ref/occ/instm/UIApplication/beginBackgroundTaskWithExpirationHandler:>.
> My hint is that the syncing is probably executing in a different thread and
> iOS kills it anyway after the 10 secs not taking into account the
> backgroundtask.
>
> Any ideas?
>
> Thanks,
>
> Martin
>
> PS: Thanks for such a great work with couchbase. Below are links to two
> apps already in the store and google play that I did using couchbase lite.
>
> https://itunes.apple.com/en/app/puntatech/id955333100?mt=8
> https://play.google.com/store/apps/details?id=com.nearup.puntatech.android
> https://itunes.apple.com/us/app/mvdvalley/id932392599?mt=8
> https://play.google.com/store/apps/details?id=com.nearup.android
>
>
>  --
> You received this message because you are subscribed to the Google Groups
> "Couchbase Mobile" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/mobile-couchbase/045fc314-6d6e-4d72-a267-f54e748a0eca%40googlegroups.com
> <https://groups.google.com/d/msgid/mobile-couchbase/045fc314-6d6e-4d72-a267-f54e748a0eca%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Couchbase Mobile" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/mobile-couchbase/CACSSHCE2G6RmjahOr8eP5iLz4x8x3RMdnE4kANXcMzGejA99NA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to