Alternativa Zenity para Android

¿Hay alguna alternativa de Zenity disponible para Android?

Estoy tratando de hacer algo como esto usando un script Bash en mi dispositivo Android:

  1. Mostrar un mensaje emergente
  2. Reproducir un tono de notificación
  3. Muestra una ventana emergente con un cuadro de entrada de texto (o número);
  4. Agregar elemento al panel de notificaciones;
  5. ¿Mostrar mensaje de la tostadora?

¿Es posible hacer esto sin usar ninguna herramienta externa (o solo con una herramienta externa liviana)? De lo contrario, nombre algunas herramientas de línea de comandos para este propósito.

Escenario de uso esperado, desde la línea de comando:

$ ANWSER=$(android_show_message --buttons OK,Cancel "Do you really want ...?" )
 (android_show_message script brings up a tiny apk app using `am start`)
 (android_show_message communicates with the app to configure what it want to do)
 (android_show_message waits until the app tells it to exit)
 user presses "OK", android_show_message exits successfully, printing "OK";
$ if [ "$ANSWER" == "OK" ]; then android_show_message --toast "Operation completed"; fi
 (a toast message is shown)
Se puede implementar como un par de aplicaciones "apk" que muestran un diálogo y un script que administra la conexión a este apk (usando sockets o tarjeta SD).

Respuestas (1)

La instalación de una herramienta de línea de comandos necesitará que se instale una aplicación de terminal en su dispositivo. En su lugar, puede utilizar las siguientes herramientas de terceros

Tasker puede hacer estas cosas por ti.

Sólo un pequeño aviso. Es una aplicación de pago y está disponible una versión de prueba. Por favor, pruébalo antes de comprar. Necesita poca comprensión avanzada.

También hay disparador

Simple, gratuito pero tiene un funcionamiento limitado Háganos saber cuál elige.

¿Cómo llamo desde bash a Tasker/Trigger y leo la entrada del usuario en bash?
También se esperaba algo simple, pero algo complejo que también se puede usar incorrectamente como solo una ducha de mensaje / cuadro de entrada desde el control remoto.
No hay una alternativa exacta. pero ambas aplicaciones pueden automatizar las tareas que necesitabas. ¿Qué está tratando de hacer exactamente al devolver la entrada a la terminal?
Tener scripts interactivos que funcionen en Linux también funcionen en Android.
No será posible con android. Android lleva un marco XML para construir GUI. Zenity utiliza el marco GTK que se compone de muchos lenguajes como C, perl python, cpp y muchos, pero no consta de ningún elemento XML. siempre puede optar por aplicaciones de línea de comandos usando c o python
No necesito un puerto de Zenity, sino un análogo. Hago algo como show_message --buttons OK:Cancel "Hello, world"en la línea de comando, la aplicación apk sabe que aparece una ventana con los controles respectivos, el usuario hace clic en un botón, imprime show_messageel texto apropiado (es decir, Cancel) y sale.
¿Es necesario tenerlo en la línea de comandos?
Sí, el propósito de Zenity es poder mostrar mensajes GUI simples desde la línea de comandos de manera sencilla. Para Android, espero que pueda mostrar mensajes de "tostadora", agregar cosas a la barra de notificaciones y finalmente mostrar cuadros de mensajes con cuadro de entrada, selector de lista y botones. La secuencia de comandos de invocación debe volver a la línea de comando cuando el usuario interactúa con esos elementos de alguna manera.
hay bibliotecas de python disponibles para zenity... así que puedes usarlas con script de python - aquí hay un ejemplo. Para compatibilidad con python, use Qpython o una aplicación similar. Esto debería proporcionarle una solución completa.
Para esto, debería haber un kit de herramientas Python + algo para admitir Zenity ya en Android. Esto conduce a una solución de peso pesado. Tampoco se cubre la forma de comunicación entre el "mundo de la línea de comandos" y el "mundo de la GUI de Android".
Qpython es compatible con Python en Android. Las secuencias de comandos estarán en python usando la biblioteca de python provista. No será una secuencia de comandos de shell. O ejecute el programa python usando shellscript
Creo que necesitas una alternativa de línea de comando específica. Pero según mi conocimiento aún no existe. Traté de proporcionar soluciones alternativas pero sus necesidades no pueden ser satisfechas. Los chats largos están prohibidos, por lo tanto, termino la conversación aquí y pronto eliminaré la respuesta. Gracias