Para lograr el objetivo con precisión, necesitamos instalar Xposed Additions Pro y Tasker , donde el primero requiere acceso root y Xposed Framework (construcción estable) instalado.
Una vez que instale Xposed Additions, se le pedirá que active su módulo en Xposed Framework. Activalo
Utilizaremos la capacidad de Xposed Addition para interceptar una pulsación de tecla y proporcionaríamos una condición y acción para realizar esa pulsación de tecla. Usaremos Tasker para eludir el conjunto limitado de opciones de Xposed Addition.
Nota : Todas las secciones probadas en Android 4.4.2 y 5.0.2.
Instrucciones para adiciones Xposed
- Lanzar adiciones expuestas → botones de toque
- Toque Agregar nueva clave
- Presione el botón del dispositivo para usarlo como tecla del ↑ teclado
- Elegí el botón Subir volumen / +
- Toca la entrada del botón que elegiste anteriormente
- Toque Agregar nueva condición
- Toque Cargar lista de aplicaciones
- Seleccione la aplicación donde desea que el botón Subir volumen simule la ↑ tecla de un teclado
- Toca la entrada de tu aplicación previamente seleccionada
- Marque la casilla para activar Haga clic
- Tap Click
- Elija DPad Up, también conocido como direccional Pad Up : es un evento clave
(Haga clic en la imagen para ampliar; desplace el mouse para conocer los detalles)
(Orden de las imágenes: siga las imágenes de izquierda a derecha en cada fila)
Ahora cree una acción para el botón Bajar volumen / - de la manera mencionada anteriormente, pero elija DPad Down en el paso final.
Es hora de que inicie la aplicación que seleccionó en dichos pasos e intente presionar los botones Subir volumen y Bajar volumen . Funcionarán como ↑ ↓ teclas direccionales de un teclado .
Tenga en cuenta que, al contrario de lo que ocurre con un teclado físico en el que si mantiene presionada una tecla direccional, el sistema continuará desplazándose hacia arriba / abajo, este no es el comportamiento que observaría si mantiene presionados los botones del dispositivo (mencionado anteriormente).
Además , en lugar de elegir DPad Up y DPad Down , elija Page Up y Page Down para simular un teclado Pg Upy una Pg Dntecla o asignarlos a una acción diferente que se enumera en el paso 10 .
Y no se preocupe por el tono de llamada o el nivel de sonido del altavoz, ya que se manejarán presionando prolongadamente los botones Subir volumen y Bajar volumen . Este comportamiento es válido cuando se inicia la aplicación seleccionada anteriormente mencionada.
He probado con éxito la solución mencionada anteriormente en Chrome, Firefox y algunos editores de texto. ¡Hasta ahora tan bueno!
No! Dicha solución no es buena para todas las aplicaciones. Queremos cubrir todas las aplicaciones, entonces, ¿por qué limitarse solo a los navegadores web y editores de texto?
Desafortunadamente, hay aplicaciones en las que dicha solución no funciona. Los KeyEvents que utilizamos allí parecen no tener efecto en aplicaciones como Foxit MobilePDF , WPS Office , BetterbatteryStats y más en la naturaleza.
Centrémonos en una nueva solución ahora. Android permite enviar golpes con el input
comando; Xposed Additions permite usar un acceso directo personalizado como acción; Tasker puede crear un acceso directo personalizado para usar input swipe
.
Instrucciones para Tasker y Adiciones Xposed
Primero necesitamos las coordenadas de inicio y fin del deslizamiento (X e Y) para usarlas en el input
comando. Podemos grabarlo usando el comando Getevent .
Configure adb en su PC, conecte el dispositivo a la PC, habilite la depuración de USB en el dispositivo, inicie un shell en la PC e ingrese:
adb shell su -c 'getevent -l'
Mostraría algunas líneas y luego esperaría indefinidamente la salida.
Es hora de que decida la duración de su deslizamiento como alternativa a DPad Up / Page Up .
Por ejemplo, la longitud de la flecha que mide un deslizamiento en las dos imágenes es una alternativa a la longitud de desplazamiento de DPad arriba / abajo y página arriba / abajo respectivamente.
Cuando haría un deslizamiento en la pantalla, el shell en la PC mostraría resultados como:
/dev/input/event0: EV_ABS ABS_MT_TRACKING_ID 0000044c
/dev/input/event0: EV_KEY BTN_TOUCH DOWN
/dev/input/event0: EV_KEY BTN_TOOL_FINGER DOWN
/dev/input/event0: EV_ABS ABS_MT_POSITION_X 00000300
/dev/input/event0: EV_ABS ABS_MT_POSITION_Y 000006de
/dev/input/event0: EV_ABS ABS_MT_PRESSURE 000000c0
/dev/input/event0: EV_ABS ABS_MT_TOUCH_MINOR 00000004
/dev/input/event0: EV_SYN SYN_REPORT 00000000
/dev/input/event0: EV_SYN SYN_REPORT 00000000
...
/dev/input/event0: EV_ABS ABS_MT_POSITION_X 000002fb
/dev/input/event0: EV_ABS ABS_MT_POSITION_Y 000004e3
/dev/input/event0: EV_ABS ABS_MT_PRESSURE 000000cc
/dev/input/event0: EV_SYN SYN_REPORT 00000000
/dev/input/event0: EV_ABS ABS_MT_PRESSURE 000000c8
Después de deslizar hacia arriba una longitud específica, presione Ctrl+ Cen la PC para detener el comando.
En su salida, tenga en cuenta las primeras entradas ABS_MT_POSITION_X ( 00000300
) y ABS_MT_POSITION_Y ( 000006de
), y las últimas ABS_MT_POSITION_X ( 000002fb
) y ABS_MT_POSITION_Y ( 000004e3
). Son las coordenadas de inicio (X1, Y1) y final (X2, Y2) en forma hexadecimal. Conviértalos en forma decimal (pruebe un convertidor aquí ).
En el shell, si ingresas:
adb shell input touchscreen swipe X1 Y1 X2 Y2
(reemplace X1, Y1 y X2, Y2 con las coordenadas decimales ahora convertidas) notará un deslizamiento hacia arriba en el dispositivo que simula efectivamente el desplazamiento hacia abajo. Manipule esas coordenadas hasta que obtenga su desplazamiento ideal hacia abajo.
Como alternativa al uso de Getevent , puede probar un enfoque más amigable.
Habilite la ubicación del puntero en Opciones de desarrollador . Una vez que lo habilite, la barra de estado de su dispositivo se cubrirá con una barra que muestra algunas coordenadas que cambiarían con el movimiento de su toque / deslizamiento en la pantalla.
Hora de registrar la longitud de tu deslizamiento. Toque y mantenga su dedo en la pantalla y nota X:
y se Y:
muestra en la parte superior. Comience a deslizar el dedo hacia la longitud deseada; pare pero no suelte el dedo y anote las coordenadas X:
y correspondientes Y:
.
Esas son las coordenadas X1, Y1 y X2, Y2 para tu deslizamiento hacia arriba. Están en forma decimal, por lo que puede usarlos directamente al input
mando.
Puede optar por desactivar las ubicaciones del puntero ahora.
Instrucciones específicas para Tasker
Ahora crearíamos un acceso directo para simular el deslizamiento que realizamos manualmente en el último comando, con el fin de automatizarlo.
- Inicie Tasker y habilítelo. Si su icono sobre la pestaña Perfiles está encendido, entonces ya está activo. Tenga en cuenta que todo en Tasker se guarda presionando el botón Atrás, que también cambiaría la ventana activa.
- Cree una tarea en Tareas mediante
+
(en la parte inferior) → nómbrela (por ejemplo Scroll Down
).
Cree una acción en ella a través de +
→ Código → Ejecutar Shell e ingrese estos detalles:
Comando :input touchscreen swipe X1 Y1 X2 Y2
Reemplace X1, X2 e Y1, Y2 con las coordenadas que anotó anteriormente. Por ej input touchscreen swipe 768 1758 763 1251
.
Comprobar uso de raíz
- Almacenar errores en :
%sd_err
este paso es opcional.
- Cree una nueva tarea denominada
Scroll Up
y cree una acción en ella siguiendo el paso 3 . Para la simulación deslizar hacia abajo, simplemente intercambie las coordenadas, así sería input swipe X2 Y2 X1 Y1
, y opcionalmente use %su_err
para almacenar errores, si ocurre.
Instrucciones para usar accesos directos de tareas en adiciones Xposed
Esta es la fase final de la solución y usaría esos accesos directos personalizados en Xposed Additions.
- Siga los pasos 1-11 en la primera sección que trata sobre el uso de las adiciones Xposed
- Elija Acceso directo en lugar de DPad Up o Page Up
- Elija Atajo de tarea → Desplazarse hacia arriba
- Elija el icono de cajas cuadradas de 3x3 en la parte inferior
- Elija un ícono y regrese a Xposed Additions.
- Repita los pasos 1-5 mencionados anteriormente para Bajar volumen y seleccione Desplazarse hacia abajo en él. Ya tienes la idea de qué hacer cada vez .
He compilado un video que muestra la respuesta completa en acción. Aquí se trata . Tenga en cuenta la calidad porque está fuertemente desgarrado de 100MB a 7.1MB.
¡Salud!