On operation for a certain period of time in the background

Hello everyone,


Using the Significant-Change Location Service, we have been running processes regularly in the background. However, since ios 11, we found that it becomes unstable when wait processing is used in the background.

Please let me know if you know the solution to this.



# Details

· When wait is inserted, subsequent processes are not performed.

* It reactivates by the iOS trigger which occurs at the next timing.

· After it becomes Suspended, endBackgroundTask is not called.



# Program behavior

The programme behaves as follows.

1. Get Significant-Change Location Service from iOS

2. Enable background task

3. Wait processing ← (Problem: Often becomes Suspended.

4. Acquire location information

5. Send data to server

6. Disable background task



* 1 Background task processing

beginBackgroundTaskWithName: expirationHandler:



※ 2 wait processing

dispatch_time or NSTimer, etc.