Tasker Para hablar de todo lo relacionado con la aplicación tasker

Respuesta
 
Herramientas
  #1  
Viejo 05/07/13, 00:44:25
Array

[xs_avatar]
tevaadarelsol tevaadarelsol no está en línea
Usuario muy activo
· Votos compra/venta: (11)
 
Fecha de registro: dic 2009
Mensajes: 1,049
Modelo de smartphone: Nexus 5 (por ahora)
Tu operador: Pepephone
Saber si hay un texto determinado en pantalla

Bueno pues aquí sigo liado con Tasker, y ahora necesitaría saber si hay alguna forma de detectar si una aplicación determinada está mostrando un texto por pantalla.

Es una aplicación típica que tiene varios "apartados" opantallas, y me gustaría detectar si me encuentro en una concreta de ellas. También me valdría si se pudiese detectar si la aplicación se ha cargado completamente, ya que me interesa detectar la pantalla principal de la misma.

El caso es que no me vale con saber si la aplicación se está ejecutando, puesto que al iniciarla muestra una animación que varía en duración puesto que necesita conexión a internet y el tiempo de carga es variable según la red móvil etc.

Decir que uso androir 4.1.2 en un Galaxy SII con la última versión de Tasker.

Bueno, espero haberme explicado y a ver si alguien conoce cómo hacer esto.

Un saludo!

Última edición por tevaadarelsol Día 06/07/13 a las 19:26:12.
Responder Con Cita


  #2  
Viejo 05/07/13, 08:54:44
Array

[xs_avatar]
maid450 maid450 no está en línea
Miembro del foro
 
Fecha de registro: sep 2009
Localización: Valencia
Mensajes: 450
Modelo de smartphone: Nexus 5 / Nexus 7
Tu operador: Yoigo
A priori es bastante complicado, por no decir imposible, la unica posibilidad que veo es que pruebes ver cual es el valor de la variable %WIN en las distintas pantallas (esa variable contiene el titulo de la ventana actual), ya que según como esté programada la app es posible que en cada pantalla el valor cambie.

Esto lo puedes hacer lanzando una tarea que contenga muchas acciones "Esperar" con el tiempo que quieras y "Flash" seguidas encadenadas, así:

1. Esperar 30 segundos (por ejemplo)
2. Flash %WIN
3. Esperar 30 segundos (por ejemplo)
4. Flash %WIN
... así varias veces

y mientras está lanzada entres en la app y te vayas moviendo por las pantallas y veas lo que vale esa variable a cada vez.
Responder Con Cita
  #3  
Viejo 05/07/13, 10:48:29
Array

[xs_avatar]
tevaadarelsol tevaadarelsol no está en línea
Usuario muy activo
· Votos compra/venta: (11)
 
Fecha de registro: dic 2009
Mensajes: 1,049
Modelo de smartphone: Nexus 5 (por ahora)
Tu operador: Pepephone
Muchas gracias por tu respuesta maid450, acabo de probarlo pero no me ha funcionado. El caso es que al mostrar la variable %WIN me muestra "pepephone", que es una app que tengo instalada pero que no tiene mada que ver con la app que quiero monitorizar. De hecho, me sale pepephone en esa app, en el home, dentro de tasker... en todos sitios.

Seguiré investigando a ver si lo consigo.

Gracias de nuevo, un saludo!
Responder Con Cita
  #4  
Viejo 06/07/13, 00:41:09
Array

[xs_avatar]
maid450 maid450 no está en línea
Miembro del foro
 
Fecha de registro: sep 2009
Localización: Valencia
Mensajes: 450
Modelo de smartphone: Nexus 5 / Nexus 7
Tu operador: Yoigo
Otra cosa que puedes probar es con la acción "ejecutar consola" ejecutar este comando (marca "ejecutar como root"):

dumpsys window | grep mFocusedApp | awk '{ gsub("}", "", $4); print $4 }'

Guardas la salida en una variable y la muestras con un flash.

Haz lo mismo que antes: "ejecutar la tarea->mostrar la salida->pausa" varias veces, te vas moviendo por las pantallas de la aplicación y mira si la parte de después de la barra "/" va cambiando, eso debería ser el nombre de la pantalla en que estás.

Si eso cambia se podría mirar algo para hacer lo que quieres a partir de ahí.
Espero haberme explicado bien :-P ya nos cuentas que tal
Responder Con Cita
Gracias de parte de:
  #5  
Viejo 06/07/13, 19:25:56
Array

[xs_avatar]
tevaadarelsol tevaadarelsol no está en línea
Usuario muy activo
· Votos compra/venta: (11)
 
Fecha de registro: dic 2009
Mensajes: 1,049
Modelo de smartphone: Nexus 5 (por ahora)
Tu operador: Pepephone
 Cita: Originalmente Escrito por maid450 Ver Mensaje
Otra cosa que puedes probar es con la acción "ejecutar consola" ejecutar este comando (marca "ejecutar como root"):

dumpsys window | grep mFocusedApp | awk '{ gsub("}", "", $4); print $4 }'

Guardas la salida en una variable y la muestras con un flash.

Haz lo mismo que antes: "ejecutar la tarea->mostrar la salida->pausa" varias veces, te vas moviendo por las pantallas de la aplicación y mira si la parte de después de la barra "/" va cambiando, eso debería ser el nombre de la pantalla en que estás.

Si eso cambia se podría mirar algo para hacer lo que quieres a partir de ahí.
Espero haberme explicado bien :-P ya nos cuentas que tal

Muchas gracias maid450!

Esto sí que me ha servido y ya he conseguido lo que quería. Tras hacer lo que comentas, compruebo mediante expresiones regulares si aparece el texto de la pantalla que necesito y solucionado.

Muchas gracias de nuevo, voy a editar el primer post y ponerle al hilo la etiqueta de Solucionado.

De nuevo muchas gracias! un saludo.

Última edición por tevaadarelsol Día 06/07/13 a las 19:33:40.
Responder Con Cita
  #6  
Viejo 18/07/13, 01:52:29
Array

[xs_avatar]
ATaskREADOS ATaskREADOS no está en línea
Miembro del foro
 
Fecha de registro: ene 2013
Mensajes: 180
Tu operador: Otra

Subido al recopilatorio.
Maid muchas gracias y enhorabuena por el excelente aporte.

Fdo: Mlesir
__________________
ATaskREADOS somos el equipo que promueve el foro y el recopilatorio de Tasker http://www.htcmania.com/forumdisplay.php?f=969
Para cualquier asunto relacionado con el foro, puedes escribirnos a [email protected]
Responder Con Cita
Respuesta

Estás aquí
Regresar   Portal | Indice > Todo sobre Android > Otro software para Android > Tasker



Hora actual: 10:06:12 (GMT +1)



User Alert System provided by Advanced User Tagging (Lite) - vBulletin Mods & Addons Copyright © 2026 DragonByte Technologies Ltd.

Contactar por correo / Contact by mail / 邮件联系 /