Für Android User muss ich immer wieder Screenshots von Android-Geräten und Apps erstellen. Im Prinzip geht das ja unter Android recht leicht, einfach nur An/Aus+VolumeDown gleichzeitig drücken, schon ist ein Screenshot gemacht. Doch um die Bilder vom Handy zu bekommen, muss man wieder extra rumwursteln. Besonders wenn MTP mal wieder rumzickt oder etwa der Bilderupload via Dropbox auf einem Testgerät noch nicht eingerichtet ist. Von daher habe ich mir mit android-scrot ein kleines Bash-Script gebaut. Es erstellt per adb den Screenshot, lädt ihn auf den Rechner und dreht das Bild gleich entsprechend der Orientierung des Handys.

Als zwingende Abhängigkeiten braucht android-scrot lediglich adb aus dem Android-SDK. Unter Debian und Ubuntu lässt sich das Tool über das Paket android-tools-adb aus den herkömmlichen Paketquellen recht einfach installieren. Bei Arch findet sich adb im AUR unter android-sdk-platform-tools. Andere Distributionen liefern das Android-SDK inzwischen eigentlich auch immer über ihre Paketquellen aus. Dazu braucht es noch optional imagemagick, um die Screenshots entsprechend der Ausrichtung des Handys zu drehen.

### Screenshot ohne Namen mit Timestamp erstellen...
$ android-scrot
Please connect your phone and activate USB-Debugging
android_12-02-2014_13-10-57.png saved

### Der ADB-Daemon muss nur beim ersten Screenshot gestartet werden...
$ android-scrot
android_12-02-2014_13-11-17.png saved

### Screenshot mit Timestamp und Namen erstellen...
$ android-scrot linuxundich
linuxundich_12-02-2014_13-11-26.png saved

### Ihr könnt auch den Dateinamen direkt angeben, eine bestehende
### Datei gleichen Namens wird ohne Warnung überschrieben...
$ android-scrot deine-app.png
deine-app.png saved

Der Rest ist dann ziemlich simpel: Handy per USB-Kabel an den Rechner anschließen, das USB-Debugging in den Entwickleroptionen aktivieren und das Skript abfeuern. Als Eingangsparameter könnt ihr einen Namen übergeben, android-scrot übernimmt diesen dann als Vorspann für den Dateinamen des Screenshots.

android-scrot erstellt Handy-Screenshots über das Linux-Terminal.
android-scrot erstellt Handy-Screenshots über das Linux-Terminal.

Zur „Installation“ des Skripts muss ich wohl nicht viele Worte verlieren. Wer mit der Android-Debug-Bridge herumhantiert, der wird wohl auch ein simples Skript zum Laufen bekommen. Wer es aber rein gar nicht auf die Reihe bekommen, der möge sich bitte an folgenden Befehlen orientieren, sie sollten das Skript unter Debian und Ubuntu einrichten. [UPDATE 09.01.2015: Sollte das Herunterladen des Skripts mittels wget einmal nicht mehr klappen, dann hat Github mal wieder etwas an den URLs geändert. Ihr bekommt das Skript natürlich jederzeit über die Github-Seite, müsst es aber dann natürlich selber an die richtige Stelle schieben.]

$ sudo apt-get install android-tools-adb imagemagick
$ adb devices  # Prüfen, ob Handy erkannt wird
List of devices attached 
0146970C0601500A	device
$ mkdir ~/bin
$ wget https://raw.githubusercontent.com/linuxundich/android-scrot/master/android-scrot -O ~/bin/android-scrot
$ chmod +x ~/bin/android-scrot
$ android-scrot
android_12-02-2014_13-29-18.png saved
Vorheriger ArtikelDual-Boot-Handy Geeksphone Revolution mit Android und Firefox OS ab 20. Februar im Handel
Nächster ArtikelÜberarbeitetes Piwik-App Piwik Mobile 2 im Play Store
Hallo, ich bin Christoph - Linux-User, Blogger und pragmatischer Fan freier Software. Wie ihr ohne Zweifel bemerkt haben solltet, schreibe ich hier über Linux im Allgemeinen, Ubuntu im Speziellen sowie Android und andere Internet-Themen. Wenn du Freude an meinen Artikel gefunden haben solltest, dann kannst du mir über Facebook, Twitter oder natürlich dem Blog folgen.

8 Kommentare

  1. Hi.

    Kleiner Tipp: man kann ADB auch per Wlan verwenden. So muss man das Handy nicht per USB Kabel mit dem Computer verbinden, nur im gleichen Wlan Netz sein.

  2. Hi, cooler Tipp, danke!
    Es gibt ein Problem mit „adb get-state“, wenn der adb Daemon noch nicht läuft (also beim ersten Aufruf), was dazu führt, dass das Bashscript meckert:

    $ android-scrot
    /home/otto/bin/android-scrot: Zeile 38: [: Zu viele Argumente.
    android_12-02-2014_15-15-19.png saved

    $ adb kill-server
    $ adb get-state
    * daemon not running. starting it now on port 5037 *
    * daemon started successfully *
    device

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein