Wie installiere ich die App über die Kommandozeile (Terminal)?

10

Wie installiere ich die App über die Kommandozeile (Terminal)?

Ich möchte ein Terminalfenster starten und die apk-Installation über die Befehlszeile (Shell-Skript) durchführen.

EDIT1: im Telefon. Ist es auch möglich, von Google Play über eine URL zu installieren, anstatt nur einen lokalen Pfad?

Ich habe keine Antwort erhalten, wie man die Google Play App über die Befehlszeile installiert.

klor
quelle

Antworten:

11

Bei ausreichenden Berechtigungen (ADB, Root, Systemanwendung) können Sie einfache Terminalbefehle verwenden, um Apps zu installieren:

Auf einem PC:

Führen Sie den einfachen Befehl aus

adb install <path to .apk file>

und die App wird installiert.
Dies muss adbinstalliert und der Debugging-Modus aktiviert sein.
Die Datei muss sich auf dem PC befinden.

In adb shelloder ein Terminal am Gerät:

pm install <path to .apk file>

Dies entspricht im Wesentlichen der PC-Methode, erfordert jedoch, dass die Datei auf dem Telefon abgelegt wird.
Zusätzlich sind Berechtigungen zum Installieren von Apps erforderlich (die ADB-Shell erbt sie vom System, andere Terminal-Apps erfordern root ).

GiantTree
quelle
2
Manchmal pm install <package.apk>schlägt die Installation vom Gerät mit fehl Failure [INSTALL_FAILED_INVALID_URI]. Wenn auf CM12.1 oder auf andere Weise Root-Berechtigungen und der adbClient auf dem Telefon vorhanden sind, können Sie dies umgehen, indem Sie das Telefon mit sich selbst verbinden. Dazu müssen Sie setprop service.adb.tcp.port 5555dann adb start-server, dann adb connect 127.0.0.1:5555, dann endlich ausführen adb shell "pm install <apk_path>". Alle Befehle sind als root auszuführen.
Grimoire
2
Wenn Sie meine oben genannte Methode verwenden, gibt es Zeiten, in denen adb einen Dummy emulator-5554unter meldet adb devices. Das Töten über adb emu killfunktioniert nicht, aber setprop service.adb.tcp.port 5555wenn Sie es erneut ausgeben, verschwindet der Dummy-Emulator. Der Befehl setprop muss ausgeführt werden, wenn der ADB-Server ausgeführt wird, sonst verschwindet der Dummy-Emulator nicht.
Grimoire
Hallo @DeathMaskSalesman, ich bin auf CM13 und erhalte den Fehler INVALID_URI. Da ich die apk mit adb und meinem Laptop installieren kann, wäre ich wirklich daran interessiert, dass Ihre Lösung funktioniert, damit ich sie ohne PC ausführen kann. Nur eine Frage ... wie installiert man adb im Telefon? find / -name 'adb' gab mir nur drei Ordner ... Als ich online
schaute,
@GiacomoTecyaPigani Sie könnten Ihr Glück mit einer Version von ADB versuchen, die ich aus meinem CM12.1-System extrahiert habe. Nachdem es aus dem Download hier , remount / System in Lese-Schreib - Modus, kopieren Sie die Binärdatei / system / ist , Problem chown root.shell /system/bin/adb, chmod 755 /system/bin/adbund chcon u:object_r:system_file:s0 /system/bin/adbsehen , ob es funktioniert.
Grimoire
1
Danke @DeathMaskSalesman, aber leider hat es nicht funktioniert. Ich habe das Downgrade auf eine frühere CM13-Version gelöst (da die von mir verwendete Version bereits die neueste für mein Gerät war)
Giacomo Tecya Pigani,