ADB-Shell-Skript zum Senden von AT-Befehlen an ein Modem – die Steuerung kann nicht an eine Shell zurückgegeben und die Android

Forum für diejenigen, die für Android programmieren
Anonymous
 ADB-Shell-Skript zum Senden von AT-Befehlen an ein Modem – die Steuerung kann nicht an eine Shell zurückgegeben und die

Post by Anonymous »

Ich habe bereits eine ähnliche Frage gestellt, konnte meine Arbeit aber immer noch nicht erledigen, daher ist dies ein zweiter Versuch, bei dem
ich meinen Stolperstein gerne klarer darlegen möchte.

Im Grunde befinde ich mich also in der ADB-Shell des Android-Telefons und kommuniziere mit dem GPRS-Modem, indem ich AT-Befehle sende.
Ich kann dies tun, indem ich den Befehl „at“ an die Gerätedatei umleite, die das Modem darstellt. und ich kann
die Antwort mithilfe des Dienstprogramms cat zurücklesen, das im Hintergrund ausgeführt wird (zuvor gestartet). Ich habe es in einem Skript implementiert,
das einen einzelnen AT-Befehl senden und die Antwort zurücklesen kann. Hier ist zum Beispiel das Skript zum
senden an+cops? Um den Namen des Betreibers zu erfahren, bei dem das Mobiltelefon campt:

Code: Select all

#SendATCommand script
cat /dev/pts/7 &
echo -e at+cops?\\r > /dev/pts/7
Die Ausgabe sieht wie folgt aus:

Code: Select all

# ./sendATCommand
./sendATCommand
#
+COPS: 0,0,"AT&T",6

OK
/dev/pts/7: invalid length
Hier sind nun zwei Probleme, die ich nicht lösen kann:
  • Ich brauche noch Um manuell die Eingabetaste zu drücken, erhalten Sie wieder die ADB-Shell-Eingabeaufforderung „#“. Gibt es eine Möglichkeit, programmgesteuert zur „#“-Eingabeaufforderung zurückzukehren? Auch hier befinde ich mich in der ADB-Shell.
  • Die angezeigte Antwort kann weder in einer Variablen noch in einer Datei (z. B. (#./sendATCommand > Output.txt)) erfasst werden. txt-Datei wird leer sein. Ich habe verschiedene Umleitungen ausprobiert, aber es funktioniert immer noch nicht.
Kann mir bitte jemand helfen, diese Probleme zu lösen? zwei Probleme (wenn überhaupt möglich)? Letztendlich möchte ich dieses kleine Skript von einem „Super“-Skript (z. B. Perl oder Powershell) aufgerufen werden, das auf einem PC läuft, mit dem mein Android-Gerät verbunden ist, aber es gibt keine Möglichkeit, dies zu tun, bis diese beiden Probleme behoben sind im Voraus!

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post