3 votos

Desde Visual Studio/Eclipse/IntelliJ a mi teléfono Android: ¿cuándo se realiza la compilación?

¿Existe tal vez una manera fácil de hacer que la salida de la consola "Build Successful" de Visual Studio/Eclipse/IntelliJ desencadene una notificación push a mi teléfono Android?

A veces falla en menos de un minuto, a veces requiere alrededor de 15 minutos para construir todo, así que me quedaría bastante tranquilo sabiendo que puedo confiar en una notificación en lugar de comprobarlo de vez en cuando.

Gracias de antemano

1voto

shashankj Puntos 11

Esto puede hacerse de dos maneras:

Sugerencia de aplicación

Hay aplicaciones que muestran una notificación en el ordenador desde el teléfono, por ejemplo, Pushbullet y Notificación de escritorio de hciLab

Para obtener una notificación, puede utilizar un antivirus o aplicaciones de limpieza/mantenimiento que dan una notificación sobre el escaneo de la aplicación una vez instalada.

Si configuras Pushbullet en tu PC junto con el dispositivo en el que lo estás probando, recibirás una notificación cada vez que se complete la compilación y se instale la aplicación.

Solución programática

Se puede escribir un script para leer la Consola ADB o el registro ADB. El script debe buscar "Build Successful" o una cadena similar.

Intentaré escribir un script para hacer precisamente eso. Tal vez intente el camino de la Aplicación hasta entonces. Si alguien escribe un script para ello, no dude en editar la respuesta.

1voto

alaasdk Puntos 111

Incluso diría que puedes usar VNC (yo lo usaría a través de un túnel SSH o VPN, no expongas el puerto VNC al mundo, es MUY inseguro si no lo haces (mira el reenvío de puertos sobre el túnel ssh para la forma más fácil de asegurar tal conexión).

En cualquier caso, esto le permitiría ver su progreso, y luego podría incluso ejecutar un par de comandos adicionales (si se siente cómodo con el terminal y la línea de comandos, podría incluso utilizar sólo el servidor SSH y cuando se conecte siempre podría traer un trabajo de fondo (recomiendo JuiceSSH).

En cuanto a lo que pides exactamente me parecería que si dices escribieras un rápido shell script que llame a tu comando y que al terminar también edite un simple archivo de texto. Entonces cualquier cosa que pueda conectarse y comprobar el contenido del archivo de texto (digamos escribir un shell script para su Android (ver: https://play.google.com/store/apps/details?id=os.tools.scriptmanager&hl=en )). Usted podría decir que la configuración de un recurso compartido de samba para el directorio donde se almacena el archivo de texto a continuación, configurar un rápido script para wget el archivo de texto e imprimir lo que en su pantalla.

Con todo, yo diría que desde el punto de vista de un desarrollador que puede preferir la configuración del servidor openssh, a continuación, instalar x11vnc, la configuración de un script (Yo uso xUbuntu (XFCE4 y no la unidad) y un simple upstart script para iniciar VNC en el inicio del sistema y en cualquier momento que la emisión de sudo servicio vnc reiniciar. Una vez que usted tiene el SSH y el comando de servidor VNC que se ejecuta a continuación, puede utilizar cualquier cliente ssh (de nuevo no puedo decir lo suficiente sobre Juice SSH que hace el reenvío de puertos en un instante). Una vez que la configuración, para mí me toque en el icono en mi pantalla de inicio para conectar el puerto (auto pasa mi usuario / certificado y todo), y luego abro Jump Desktop y toque la entrada de mi servidor y se auto pasa mi contraseña VNC por lo que sólo tienen 2 toques y estoy en con plena seguridad. Si es necesario NoIP.me todavía hace DNS dinámico libre para que pueda obtener una cuenta y luego usar una dirección que nunca cambia (es decir, user.noip.me) en lugar de tener que memorizar su routers WAN IP y recordar a comprobar cada vez que cambia.

Perdona si esto suena un poco largo. Desconozco su nivel de conocimientos técnicos, y quería no sólo tratar de responder específicamente a su pregunta como se plantea, sino también compartir mi solución personal, ya que esto le permitiría el acceso desde cualquier lugar (a menos que el uso de un Wi-Fi que filtra el puerto del servidor SSH o si no tiene conexión de datos), y no sólo ver si el trabajo se hace, pero también se puede interactuar con su escritorio como si estuviera sentado en frente de ella y arreglar cualquier tal vez pequeños problemas de compilación o hacer que el ajuste antes de que se olvide tipo de cosas. Yo uso mucho Jump Desktop y es totalmente capaz (incluso maneja M$ Remote Desktop también).

Por favor, hazme saber si necesitas que te explique algo, o que lo ajuste si estás usando Windows (yo uso xUbuntu 14.04 actualmente, que es GRATIS, y el escritorio imita a Windows un poco de cerca, así que si eres un Dev de Windows y te gustaría probar Linux te lo recomiendo ALTAMENTE)).

En cualquier caso, espero que esta información sea de ayuda.

1voto

alaasdk Puntos 111

Creo que he encontrado lo que te gustaría. Un plugin de Eclipse llamado Jenkins. Se parece exactamente a lo que estás hablando. Puede monitorizar trabajos (e incluso te permite interactuar completamente con él a través de tu navegador. ¡Me tomó un tiempo para encontrar esto como Eclipse y un montón de términos comienzan a traer ejemplos de código para los proyectos y lo que no, pero hey persistencia!

Un software que debería hacer lo que usted desea: https://wiki.jenkins-ci.org/display/JENKINS/Use+Jenkins

Buena guía de integración con Eclipse: https://www.3pillarglobal.com/insights/how-to-set-up-continuous-integration-with-eclipse-selenium-webdriver-maven-and-hudson

"¿Qué es Jenkins? Jenkins es una aplicación galardonada, multiplataforma, de integración continua y entrega continua que aumenta su productividad. Utilice Jenkins para construir y probar sus proyectos de software de forma continua, facilitando a los desarrolladores la integración de los cambios en el proyecto, y facilitando a los usuarios la obtención de una nueva construcción. También le permite entregar su software de forma continua proporcionando potentes formas de definir sus pipelines de construcción e integrándose con un gran número de tecnologías de prueba y despliegue.

Características Jenkins ofrece las siguientes características principales fuera de la caja, y muchas más se pueden añadir a través de plugins:

La instalación es sencilla: Sólo hay que ejecutar java -jar jenkins.war y desplegarlo en un contenedor de servlets. Sin instalación adicional, sin base de datos. ¿Prefieres un instalador o un paquete nativo? También los tenemos. Fácil configuración: Jenkins puede configurarse completamente desde su amigable interfaz gráfica de usuario web con amplias comprobaciones de errores sobre la marcha y ayuda en línea. Rico ecosistema de plugins: Jenkins se integra con prácticamente todas las herramientas SCM o de construcción que existen. Vea los plugins. Extensible: La mayoría de las partes de Jenkins pueden ser extendidas y modificadas, y es fácil crear nuevos plugins de Jenkins. Esto le permite personalizar Jenkins según sus necesidades. Construcciones distribuidas: Jenkins puede distribuir las cargas de construcción/prueba a múltiples ordenadores con diferentes sistemas operativos. ¿Construir software para OS X, Linux y Windows? No hay problema".

Ahora, por supuesto, usted no tiene que ir loco y utilizar cada pieza de lo que se ofrece aquí, pero el hombre esto parece una utilidad de programación impresionante si alguna vez vi uno.

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