Pregunta

En la CE basado en Windows Mobile que podría evitar que la pantalla de luz de fondo de tiempo de espera utilizando el y href="http://msdn.microsoft.com/en-us/library/ms919803.aspx" rel="nofollow"> ReleasePowerRequirement API de este modo:

IntPtr handle = SetPowerRequirement("BKL1:", PowerState.FULL, 1, IntPtr.Zero, 0);
// screen won't timeout while you do stuff in here
ReleasePowerREquirement(handle);

Es una cosa similar posible en WP7?

¿Fue útil?

Solución

Sí, es posible. Puede utilizar PhoneApplicationService.Current.UserIdleDetectionMode para detener la sincronización retroiluminación de la pantalla y de parar la pantalla de bloqueo.

También puede utilizar PhoneApplicationService.Current.ApplicationIdleDetectionMode para que la aplicación pueda seguir funcionando bajo una pantalla de bloqueo.

Aquí hay más detalles sobre esas dos opciones:

UserIdleDetectionMode

Al desactivar esta se detendrá la pantalla de tiempo de espera y de bloqueo. A modo de ejemplo, que UserIdleDetectionMode desactivar mientras se descarga un archivo grande, por lo que la aplicación no mata a la descarga a mitad de camino.

Cuando se haya completado la descarga, que vuelva a habilitar UserIdleDetectionMode por lo que el tiempo de espera de la pantalla puede como de costumbre.

ApplicationIdleDetectionMode

Nota: Este es un golpe de una sola vez. Se puede desactivar, pero no se puede volver a habilitarla.

Si deshabilita ApplicationIdleDetectionMode, la aplicación seguirá funcionando cuando se bloquea la pantalla. Su aplicación seguirá morir si el usuario inicia una aplicación diferente.

Los requisitos de certificación piden que le solicitan al usuario la primera vez que desactivar ApplicationIdleDetectionMode. P.ej. "Esta aplicación continuará funcionando bajo una pantalla bloqueada, y puede agotar la batería. ¿Estás bien con eso?" Si todavía no se rechazará su aplicación.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top