Pregunta

Me gustaría mantener la pantalla siempre que sea en una de mis actividades se están ejecutando y el teléfono está conectado a una fuente de alimentación. Sé que son Wakelocks complicado, así que estoy buscando un ejemplo o alguna documentación sobre cómo lograr este objetivo específico.

¿Fue útil?

Solución

No utilice cerraduras vigilia para esto -.. Acaba de establecer y borrar la bandera WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON ventana en función de si el dispositivo está conectado actualmente en Puede establecer el indicador con Activity.getWindow().addFlags()

Así que el código sería

getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);

Otros consejos

A WakeLockisn't que complicado, sólo asegúrese de comprobar que no está ya llevó a cabo cuando se llama acquire() y asegúrese de que es a cabo cuando se llama release(). También quiere asegurarse de que tiene permiso android.permission.WAKE_LOCK se define en el archivo de manifiesto.

Si sólo desea adquirir el WakeLock cuando el teléfono está conectado, se puede registrar un BroadcastReceiver que los relojes de los intentos android.intent.action.ACTION_POWER_CONNECTED y android.intent.action.ACTION_POWER_DISCONNECTED. No he utilizado éstos mismo, por lo que puede haber algo de permiso a la aplicación que necesita para llegar antes de que estos intentos funcione de verdad.

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