2012-07-17 28 views
9

Estoy trabajando en la detección de gestos y toques en un dispositivo Android. El problema es que mi aplicación deberá detectar estos gestos fuera de su propia vista, en otras aplicaciones o incluso en la pantalla de inicio. En otras palabras, ¿hay alguna manera de espiar los eventos táctiles? Me imagino que hay algunas medidas de seguridad que lo impiden. Solo necesito probar el concepto, así que probaría esto en un dispositivo de desarrollo donde pueda desactivar cualquier seguridad que pueda evitar que lo haga (sin causar daño a nadie ni exponer sus datos).¿Puedo escuchar los eventos táctiles de Android?

+0

Creo que puedes. Ya tengo instalada una aplicación que, desde mi computadora, puede activar el Satélite GPS incluso si no se ha activado y puede bloquear la pantalla desde la PC. El nombre de la aplicación es [AVG] (https://play.google.com/store/apps/details?id=com.antivirus&feature=nav_result#?t=W251bGwsMSwxLDMsImNvbS5hbnRpdmlydXMiXQ ..) –

+1

¿Intentó utilizar un servicio en segundo plano? –

+0

Gracias Adel, pero no creo que sea el mismo tipo de problema. Quiero hacer un seguimiento de los eventos que suceden en las aplicaciones usando otra aplicación que se ejecuta en el teléfono. – pypmannetjies

Respuesta

5

No puede hacer esto por diseño. Sería un gran riesgo de seguridad si Android te permitiera hacer algo como eso. Piénselo, si pudiera hacer esto, podría fácilmente hacer todo tipo de aplicaciones maliciosas, como un registrador de claves. En cuanto a la sugerencia de servicio en segundo plano, no es posible utilizar un servicio de fondo para interceptar eventos táctiles de otra aplicación. Básicamente, Google lo ha hecho a propósito, no puede meterse con el ciclo de vida de otra aplicación o controladores de eventos, etc. etc. De hecho, Google consideraría lo que intenta hacer como código malicioso, incluso si su intención de escribir el código no es 'malicioso o ilegal, simplemente está fuera del paradigma de seguridad que ha elegido Android, y por lo tanto se considera malicioso, por lo que Google hará lo que pueda para no permitirte hacer eso.

+2

Sin embargo, si tiene control sobre el marco, sin duda se puede hacer. Debería compilar su propia compilación de Android desde la fuente con los gestos modificados como parte del marco. O bien, podría cambiar el marco para permitir que otras aplicaciones intercepten eventos táctiles. Todavía no sería * fácil * porque, como esta respuesta menciona, está fuera del modelo de seguridad. – dcow

+0

Cierto, si pudieras hacer tus propias compilaciones, entonces sí, puedes hacer lo que quieras. Estaba trabajando bajo el supuesto de que el OP no controlará la compilación de Android en el dispositivo. :) –

+0

Gracias por sus respuestas. Buena sugerencia para tratar de compilar desde el origen y modificar el marco. Supongo que para mi investigación puedo evitar hacer esto y reunir mis datos de otra manera (lo que ahorrará tiempo), aunque esperaba que una prueba de concepto fuera posible. – pypmannetjies

1

muy muy limitado pero puede usar AccessibilityEvents en un segundo plano para rastrear y explorar la pantalla, pero nuevamente es muy limitado, pero no requiere que obtenga ningún permiso especial o mágico de google o construyendo tu propia ROM jaja, espero que esto ayude :)

Cuestiones relacionadas