1 votos

¿Una forma mínima de tener siempre la pantalla encendida en Android?

Estoy preparando un montón de tabletas usando un sistema operativo Android mínimo ( https://slimroms.org/ ). Y se preguntaba si hay alguna manera de tener siempre la pantalla encendida (es decir, deshabilitar Sleep y el bloqueo automático de la pantalla) sin necesidad de usar aplicaciones de terceros. Tengo acceso completo a Root a través de SSH y ADB, etc esperando que haya algún ajuste en /proc o como argumento de arranque del núcleo que pueda hacer.

Estas son tabletas de "Nos gustaría su opinión" que están a la vista del público, por lo que la pantalla nunca debe oscurecerse o bloquearse, etc. Siempre van a estar enchufadas, así que el ahorro de energía, etc. no será un problema.

0 votos

Parece que WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON podría ser una forma posible (¿ejecutado desde un cronjob o servicio?) - sin embargo, parece que esto ha sido obviado en el nivel 27 de la API en adelante :-/.

1 votos

Relacionado o posible duplicado: Android.stackexchange.com/q/207081/247431

1 votos

Hmmm - es un poco complicado, pero podría funcionar: stackoverflow.com/questions/29072501/

1voto

alecxs Puntos 29

Ponga el ajuste de "mantenerse despierto mientras está conectado"
(La pantalla nunca dormirá mientras se carga)

Configuración - Opciones del desarrollador - Stay awake: on

o de la terminal

svc power stayon true

si el usuario puede presionar el botón de encendido, ajustar el bloqueo de la pantalla a "ninguno" (ni siquiera deslizarlo) y
usar Tasker/MacroDroid/Automate para ver el botón de encendido. o ejecutar un perro guardián desde la concha

el siguiente ejemplo depende de tres binarios Androids
/system/bin/toolbox
/system/bin/toybox
/system/bin/input

# (replace first line with while 1)
until [ $(($(toybox cat /sys/class/power_supply/ac/online)+$(toybox cat /sys/class/power_supply/*usb/online))) -eq 0 ]
  do
    case "$(toolbox getevent -lc4 /dev/input/event2 | toybox head -n1)" in
      *KEY_POWER*)
        input keyevent KEYCODE_WAKEUP
      ;;
    esac
done  

el código anterior comprueba si el cargador está conectado como punto de entrada del bucle. el bucle sale cuando el cargador está desconectado. /dev/input/event2 puede variar para su dispositivo. Puede comprobar qué evento de entrada tiene sólo 3 botones [Vol+|Vol-|Pwr] de getevent -il (para un código más genérico mira aquí )

0 votos

Ugh - tal vez hablé demasiado pronto. Después de una cierta cantidad de tiempo (incluso con "Ajustes -> Opciones de desarrollador -> Permanecer despierto activado") la pantalla se oscurece, y se oscurece casi hasta el punto de no poder ver nada. Un "toque" hará que la pantalla vuelva a tener todo el brillo, pero ¿hay alguna forma de mantener el brillo al 100%?

0 votos

No estoy seguro de que haya un código de teclas para el desbloqueo. el único evento de entrada inofensivo que puedo imaginar es el movimiento del cursor del ratón (no el tacto/limpieza), pero el cursor podría ser visible

1 votos

En realidad, otro pensamiento que acabo de tener - ¿hay algún lugar donde se puede establecer el porcentaje de "dim" para la pantalla. Por ejemplo, si la atenuación va al 30% del brillo total de la pantalla, ¿puedo establecer la "atenuación" al 100%? De esta manera - incluso si la pantalla va en modo "dim" no importará (es decir, no hay necesidad de enviar 'tap'/'mouse'/'key' eventos a la pantalla)

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X