Soy un ávido apostador deportivo y todos los días hago apuestas utilizando una aplicación móvil de una casa de apuestas deportivas local. La casa de apuestas deportivas ofrece una aplicación móvil, solamente, y ninguna versión de escritorio. Lo cual es una pena porque sé cómo automatizar las aplicaciones de escritorio y los navegadores de escritorio utilizando Selenium.
La colocación de las apuestas es una operación sin sentido que tengo que realizar manualmente. Recibo un correo electrónico con los equipos a los que debo apostar desde un servicio profesional, abro la aplicación móvil de la casa de apuestas deportivas y utilizo mis dedos para hacer clic en las distintas apuestas, enviándolas sobre la marcha. Quiero automatizar esto para recuperar tiempo en mi vida.
Pensé que podría utilizar algo como Android Studio, jUnit, y uiautomatorviewer (herramienta de Android SDK) y automatizar el teléfono a través de mi escritorio a través de una conexión USB en el teléfono. Por supuesto, esta solución requiere habilitar la depuración USB en el teléfono Android. Pensando que esta solución sería un éxito, empecé a implementarla y me encontré con un obstáculo importante: ¡la aplicación móvil de apuestas deportivas se desactiva cuando la depuración USB está activada! Lo que impide que esta solución funcione. Y por eso estoy buscando una solución nativa: una que no requiera una conexión USB. (nota: les llamé y pregunté por qué es esto - dijeron que triangulan mi teléfono usando su conexión LTE para asegurarse de que estoy en un lugar legal para apostar - y que si la conexión USB se puede habilitar, entonces teóricamente alguien podría configurar una granja de servidores, conectar los teléfonos a ella, y remota en cualquier parte del mundo para hacer apuestas, violando la ley - bueno, yo no estoy rompiendo la ley con lo que quiero hacer, pero veo su punto de vista en cuanto a por qué se desactiva)
Antes de adentrarme en la madriguera de descubrir una solución nativa -de la que admito libremente que no sé nada- me gustaría preguntar a la comunidad aquí presente cómo podría hacerse.
Algunos pensamientos que tuve...
¿Puedo escribir una aplicación Android que controle otra aplicación Android?
¿Podría utilizar Selendroid (de forma nativa) para controlar la aplicación deportiva móvil?
Ambas parecen ser empresas importantes.