Binaries auf Android ausführen

Praxis & Tipps | Tipps & Tricks

Ich habe ein in C geschriebenes Programm mit dem NDK von Google für Android erfolgreich übersetzt. Wie kann ich dieses Binary nun auf meinem Android-Gerät ausprobieren?

Die Android-Dokumentation beschreibt nur, wie Sie mit dem NDK eine normale (in Java geschriebene) Android-App um in C geschriebene Teile ergänzen. Der Start eines komplett in C geschriebenen Binary erfordert daher ein paar Tricks.

Am einfachsten geht das von der Kommandozeile des PC aus – unter Windows wurde dazu im Rahmen der NDK-Installation Cygwin auf Ihren Rechner gespielt. Das Android-Gerät muss wie bei der normalen App-Entwicklung per USB angeschlossen sein, der Entwickler-Modus und USB-Debugging müssen aktiv sein. Öffnen Sie ein Terminal und stellen sicher, dass der Standard-Pfad den Android Debugger (adb.exe) enthält: Wenn Sie adb eintippen, sollte ein lange Liste an Optionen durchscrollen. Erscheint nur „Kommando nicht gefunden“, müssen Sie die Variable PATH erweitern. Das Programm adb.exe liegt im Ordner sdk/platform-tools unterhalb des im Rahmen der NDK-Installation heruntergeladenen adt-bundles. Also etwa:

export PATH=$PATH:/cygdrive/d/adt-bundle/sdk/⤦
 platform-tools/adb.exe

Als Nächstes wechseln Sie mit dem cd-Befehl in das Verzeichis, in dem Ihr Binary liegt. Danach können Sie das Binary auf das Gerät kopieren, ausführbar machen und aus der Ferne auch gleich starten:

adb push binary.exe /data/local/tmp
adb shell chmod 744 /data/local/tmp/binary.exe
adb shell /data/local/tmp/binary.exe

Alternativ dazu können Sie mit adb shell auch ein Terminal auf dem Gerät öffnen und dort /data/local/tmp/binary.exe lokal starten.

Hinweis: Das Verzeichnis /data/local/tmp ist eines der wenigen, in denen Android von außen nicht nur Schreibzugriffe, sondern auch das Starten von Binärdateien erlaubt.

(bbe@ct.de)

Artikel kostenlos herunterladen

Anzeige