Zenity-Alternative für Android

Gibt es eine Zenity- Alternative für Android?

Ich versuche, so etwas mit einem Bash-Skript in meinem Android-Gerät zu tun:

  1. Zeigen Sie eine Popup-Nachricht an
  2. Spielen Sie einen Benachrichtigungston ab
  3. Ein Popup-Fenster mit Text- (oder Zahlen-) Eingabefeld anzeigen;
  4. Element zum Benachrichtigungsfeld hinzufügen;
  5. Toastermeldung anzeigen?

Ist es möglich, dies ohne Verwendung eines externen Tools (oder nur mit einem leichten externen Tool) zu tun? Wenn nicht, nennen Sie bitte einige Kommandozeilen-Tools für diesen Zweck.

Erwartetes Nutzungsszenario, von der Befehlszeile:

$ 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)
Es kann als Paar einer "apk"-Anwendung implementiert werden, die einen Dialog und ein Skript anzeigt, das die Verbindung zu dieser apk verwaltet (unter Verwendung von Sockets oder SD-Karte).

Antworten (1)

Für die Installation eines Befehlszeilentools muss eine Terminal-App auf Ihrem Gerät installiert sein. Stattdessen können Sie die folgenden Tools von Drittanbietern verwenden

Tasker kann diese Dinge für Sie erledigen.

Nur ein wenig Heads-up. Es ist eine kostenpflichtige App und eine Testversion ist verfügbar. Bitte testen Sie es vor dem Kauf. Es braucht wenig fortgeschrittenes Verständnis.

Es gibt auch Trigger

Einfach, kostenlos, funktioniert aber nur eingeschränkt Lassen Sie uns wissen, für welches Sie sich entscheiden.

Wie rufe ich Tasker/Trigger von Bash auf und lese die Benutzereingaben in Bash zurück?
Auch etwas Einfaches erwartet, aber eine komplexe Sache, die auch als Nachrichten-/Eingabebox-Dusche von der Fernbedienung missbraucht werden kann.
Es gibt keine genaue Alternative. aber beide Apps können die benötigten Aufgaben automatisieren. Was versuchen Sie genau zu tun, indem Sie die Eingabe an das Terminal zurückgeben?
Damit interaktive Skripte, die unter Linux funktionieren, auch unter Android funktionieren.
Mit Android wird es nicht möglich sein. Android enthält ein XML-Framework zum Erstellen einer GUI. Zenity verwendet das GTK-Framework, das aus vielen Sprachen wie C, Perl, Python, CPP und Lots besteht, aber keine XML-Elemente enthält. Sie können sich jederzeit für Befehlszeilen-Apps mit C oder Python entscheiden
Ich brauche keinen Port von Zenity, sondern einen analogen. Ich mache so etwas wie show_message --buttons OK:Cancel "Hello, world"in der Befehlszeile, die apk-Anwendung weiß, dass sie ein Fenster mit den entsprechenden Steuerelementen öffnet, der Benutzer auf eine Schaltfläche klickt, der show_messageentsprechende Text (z. B. Cancel) druckt und beendet wird.
Ist es notwendig, es auf der Befehlszeile zu haben?
Ja, der Zweck von Zenity besteht darin, einfache GUI-Meldungen von der Befehlszeile auf einfache Weise anzeigen zu können. Für Android erwarte ich, dass es "Toaster"-Nachrichten anzeigen, Dinge zur Benachrichtigungsleiste hinzufügen und schließlich Nachrichtenfelder mit Eingabefeld, Listenauswahl und Schaltflächen anzeigen kann. Das Aufrufskript sollte zur Befehlszeile zurückkehren, wenn der Benutzer irgendwie mit diesen Elementen interagiert.
Für Zenity sind Python-Bibliotheken verfügbar. Sie können diese also mit Python-Skript verwenden - hier ist ein Beispiel. Verwenden Sie für Python-Unterstützung Qpython oder eine ähnliche App. Dies sollte Ihnen eine vollständige Lösung bieten.
Dafür soll es Python + etwas Toolkit geben, um Zenity bereits auf Android zu unterstützen. Dies führt zu einer schwergewichtigen Lösung. Auch die Art der Kommunikation zwischen „Befehlszeilenwelt“ und „Android-GUI-Welt“ wird nicht behandelt.
Qpython unterstützt Python auf Android. Die Skripterstellung erfolgt in Python unter Verwendung der bereitgestellten Python-Bibliothek. Es wird kein Shell-Scripting sein. Oder führen Sie das Python-Programm mit Shellscript aus
Ich denke, Sie brauchen eine bestimmte Befehlszeilenalternative. Gibt es aber meines Wissens noch nicht. Ich habe versucht, alternative Lösungen anzubieten, aber Ihre Bedürfnisse können nicht erfüllt werden. Lange Chats sind verboten, daher wird die Konversation hier beendet und die Antwort wird bald von mir gelöscht. Vielen Dank