Temporizador de fondo de larga duración de iOS con modo de fondo "ubicación"

Quiero implementar el temporizador de fondo de larga ejecución que envía la ubicación del usuario al servidor periódicamente.

Para ello, me puselocation modo paraUIBackgroundModes, y llamabeginBackgroundTaskWithExpirationHandler Cuando la aplicación pasa a segundo plano. Y paraCLLocationManager, Yo suelostartUpdatingLocation Método (no quiero usar un cambio significativo, porque necesito una ubicación de alta precisión).

Pero alrededor de 26 minutos después de que la aplicación pasa a segundo plano, se detiene para enviar la ubicación al servidor. Pero la aplicación no se ha bloqueado, así que después de llevar la aplicación a primer plano, puede reanudar su temporizador.

26minutos es de experimentos, con iOS 6.1, iPhone 5.

Aquí hay algunas preguntas,

No entiendo por qué se suspende después de 26 minutos, no de 10 minutos, lo que se conoce como límite de tiempo para tareas en segundo plano.

Antes de 16mins,backgroundTimeRemaining los métodos devuelven el valor máximo doble Pero después de 16mins, disminuye de600, por lo que suspende la tarea de fondo después de 10mins.

Ya traté de llamarbeginBackgroundTaskWithExpirationHandler Dentro del controlador de caducidad, pero sin uso.

Si hay alguien que tenga una pista para este problema, será muy apreciado.

Respuestas a la pregunta(2)

Su respuesta a la pregunta