2009-11-19 22 views
8

Aquí es algo que estoy tratando desesperadamente de llegar al trabajo:iPhone aplicación en ejecución, mientras que la pantalla bloqueada

Tengo una aplicación que sondea el módulo GPS en intervalos especificados y luego envía coordenadas a un servidor utilizando Unix llama tales como escribe(); Funciona bien cuando la aplicación está activa, pero una vez que la pantalla se bloquea, el informe se detiene.

He encontrado esto: [UIApplication sharedApplication] .idleTimerDisabled = YES; Esto mantiene viva la aplicación, pero también descarga rápidamente la batería. Me encontré con otras aplicaciones que transmiten música incluso cuando la pantalla está bloqueada (aplicaciones que no son de Apple) y, por lo tanto, pensé que tenía que haber una forma de mantener viva la transmisión de datos del GPS.

¿Alguien puede ayudar? ¡Gracias!

+1

He bajado la ruta de bloqueo de la pantalla de desactivación antes, no solo la batería se agota bastante rápido, pero el dispositivo puede calentarse mucho si se deja así durante una hora. – mbehan

Respuesta

0

No estoy 100% seguro, pero creo que escuché en alguna parte que el módulo GPS solo funciona cuando la pantalla no está bloqueada. (A menos que tenga un teléfono con jailbreak por supuesto ...)

Creo que leí esto cuando estaba descargando una aplicación en ejecución que hacía un seguimiento de mi ubicación mientras estaba fuera de ejecución. La aplicación tenía su propia "pantalla de bloqueo" que tenía que tener activada, lo que agotaba la batería bastante rápido. Si tuviera que bloquear la pantalla normalmente y luego volver a desbloquearla, tendría que volver a adquirir mi ubicación.

0

No creo que sea posible (es algo que he querido poder hacer en el pasado). Sé por ejemplo que el navegador Safari, que puede acceder al GPS, no lo hace cuando la pantalla está bloqueada, aunque podría ser por diseño y no por limitación.

1

Tienes que dejar la pantalla desbloqueada. Pero eso no significa que tengas que dejar el GPS habilitado. Puede apagar el monitor de GPS y despertarlo cada pocos minutos, y un "salvapantallas" completamente negro que se enciende después de un minuto debe reducir bastante el desagüe.

+2

Kendall, ¿puede ampliar su sugerencia? Si dejo la pantalla desbloqueada usando [UIApplication sharedApplication] .idleTimerDisabled = YES; esto al menos para mí mantiene la pantalla y la luz BG encendida, por lo que la batería está sangrando mucho. ¿Hay alguna otra forma de mantener la pantalla desbloqueada, pero apague la luz BG? – David

+0

No creo que haya ninguna forma de desactivar la luz BG. La idea era que el consumo de la batería podría reducirse si la pantalla tuviera datos mínimos, por lo que el sistema no realizó ningún otro trabajo para mantener las imágenes en pantalla. –

1

Si su aplicación reproduce (o graba) el sonido, incluso si reproduce silencio, continuará ejecutándose incluso cuando la pantalla esté bloqueada. Por lo tanto, es posible que desee intentar reproducir el silencio a través de los servicios de cola de audio para mantener su aplicación en funcionamiento.

Tenga en cuenta que no conozco ninguna especificación relacionada con GPS con respecto a esta pregunta. Otro comentarista dice que el GPS está específicamente prohibido para funcionar cuando la pantalla está bloqueada (lo que podría ser una decisión sensata del lado de Apple, dados los posibles problemas de privacidad). No puedo aconsejar si eso es cierto o no.

Cuestiones relacionadas