6 votos

Desactivar la entrada de la pantalla táctil a través de la consola

Estoy buscando una manera de desactivar y activar la pantalla táctil del teléfono a través de la consola, y posiblemente los botones físicos, para evitar que los toques de los dedos sean procesados. El teléfono es un Samsung Galaxy Frame, Android 4.1.x.

Antecedentes:

Estoy configurando un viejo Galaxy Fame para que sirva de navegador por satélite fijado en el salpicadero de mi coche, con el objetivo de utilizar el actualizado y gratuito OpenStreetMap.

Cuando giro la llave, el usb del teléfono se alimenta a 5V, cuando apago el coche, el usb no tiene energía. El teléfono es capaz de detectar estos eventos y he programado algunas acciones sobre ellos, con el objetivo de proporcionar un servicio de navegador de encendido y apagado instantáneo.

El teléfono permanece siempre encendido, sólo cambia a un estado de ahorro de energía cuando el coche está apagado. La aplicación del navegador - OsmAnd - se inicia automáticamente al arrancar, pero el arranque no se produce entre un ciclo de encendido y apagado del coche, porque el teléfono permanece encendido para detectar los mencionados cambios de usb.

Actualmente, lo que ocurre cuando arranco el coche y el usb se alimenta:

  • La pantalla está encendida (echo 200 >/sys/class/backlight/panel/brightness)
  • El receptor satelital está activado
  • Frecuencia de la Cpu ajustada al máximo

Que pasa cuando apago el coche y el usb pierde potencia:

  • Luz de fondo de la pantalla apagada
  • El receptor satelital se apaga, junto con el wify y el bluetooth, en caso de que hayan estado activos
  • Frecuencia de la Cpu ajustada al mínimo

Hasta aquí todo funciona. Mi problema ahora es que, cuando el coche se apaga y el teléfono entra en este modo casi de espera, la pantalla táctil sigue aceptando entradas y, si se manipula o se toca el teléfono por cualquier motivo, reacciona sigilosamente a esos toques mientras la pantalla no está iluminada.

0 votos

¿cuál es el modelo de identificación de este dispositivo? es decir, sm-blahblah, también puede publicar su init.rc a un pastebin? ¿Tienes este dispositivo rooteado?, grep su ramdisk *.rc las entradas perms/chown debe tsp-ish, panel de pantalla táctil

0 votos

Ejecuta cat /sys/class/sec/sec_touchscreen/set_module_off si sale 0 entonces haz un eco a 1 y mira que pasa. También ¿cómo puedo envolver el código en los comentarios?

0 votos

Esto es un "Samsung Galaxy Fame gt-s6810p"; /init.rc está aquí: pastebin.mozilla.org/8842877 el dispositivo está rooteado y puedo ejecutar su ; grep Los resultados parecen interesantes, pero aún no he experimentado con estos archivos de control: pastebin.mozilla.org/8842878 . Mis jugueteos con /sys/class/sec/sec_touchscreen/set_module_off están aquí: pastebin.mozilla.org/8842879

3voto

moonbutt74 Puntos 153

Davide,

cat su init.rc y bajo # Permisos para InputDevices.

chown system radio /sys/class/sec/tsp/cmd
chmod 0660 /sys/class/sec/tsp/input/enabled  <--your device may differ
chown system system /sys/class/sec/tsp/input/enabled <--your device may differ

Añadir a su configuración de secuencias de comandos después de verificar, para mi dispositivo, un samsung galaxy tab 4

echo 0 > /sys/class/sec/tsp/input/enabled

Pantalla táctil asesinada.

echo 1 > /sys/class/sec/tsp/input/enabled

La pantalla táctil se ha vuelto a habilitar.

m

0 votos

¡Estupendo! Mi teléfono sin embargo no tiene ese archivo de control. Lo más cercano que puedo acercarme a por grep -sintiendo /sys para las cuerdas enable y tsp son: /sys/devices/virtual/sec/tsp/power/autosuspend_delay_ms - que ignorantemente sobreescribí a 1000 sin éxito, y /sys/module/hid_prodikeys/parameters/enable que sobreescribí en N,N,N,N,N,N,N,N intentando desactivar las teclas táctiles, sin éxito. Los permisos de escritura se establecieron antes de cada escritura, y no se produjeron errores. Probablemente me engañó el nombre de esos archivos de control.

0 votos

También he probado a tocar con /sys/class/sec/sec_touchscreen/set_module_off y /sys/module/hid_magicmouse/parameters/report_touches .

0 votos

¿Lo has resuelto? ¿Hay alguna forma de hacerlo?

3voto

AusGutemGrund Puntos 21

THX a todos pero las soluciones mencionadas no me han funcionado.

Pero he encontrado una solución aquí: https://Android.stackexchange.com/a/193667

rm -rf /dev/input/event0

Hace que se "borre" mi entrada de la pantalla táctil. Los otros eventos desactivan/borran mis otros botones de hardware como el volumen, etc. Después de reiniciar el teléfono, vuelven a aparecer. Usted necesita Root / su para esto.

0voto

Scrooge McDuck Puntos 31

En el Google Nexus 4 ( mako , lineageos 14.1) y Xiaomi Mi5 ( gemini ) puede dar

rm /dev/input/event2

para desactivar la pantalla táctil en tiempo de ejecución. Usted todavía será capaz de controlar el dispositivo a través de scrcpy .

En el Google Nexus 5 ( hammerhead , lineageos 14.1) puede dar

rm /dev/input/event1

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