Ist es möglich, eine App aus dem Play Store über die Kommandozeile zu installieren und wenn ja, wie?
Was ich zu erreichen versuche, ist etwas Ähnliches wie die Verwendung von adb install file.apk , aber anstelle einer apk-Datei wäre das Ziel ein Paketname einer Play Store-App (z. B. adb install com.spotify.mobile.android.ui ).
Ist so etwas möglich?
Kurze Antwort : Nein.
adb install
ist eine "Verknüpfung", die dem Öffnen einer Shell (mit adb shell
) und der Eingabe von entspricht pm install
. pm
steht für Paketmanager und sein Verhalten ist das gleiche wie bei anderen Paketmanagern in anderen Linux-Distributionen (wie aptitude
in Debian oder pacman
Arch Linux), außer dass pm
das Paket nicht von einem entfernten Ort abgerufen wird.
Der Play Store ist eine Anwendung wie andere, und wir können Android-Anwendungen nicht so aufrufen, wie wir ein Programm wie ein C- oder "normales" Java - Programm nennen, da die .apk
Datei eigentlich keine Binärdatei ist, sondern ein einfach gezipptes Paket. Es ist die Dalvik Virtual Machine (eine Art Äquivalent zur Java VM ), die sich mit laufenden Anwendungen befasst. Laden Sie die Play Store-Anwendung einfach die gewünschte Anwendung herunter und führen Sie sie dann pm install
mit dem heruntergeladenen Paket aus.
Ich habe nach der gleichen Antwort gesucht, ich kann keinen einzigen Befehl dafür finden, aber ich habe einige Optionen gefunden, die in solchen Fällen nützlich sein könnten:
A. Laden Sie die .apk-Datei auf Ihren Computer herunter und installieren Sie die APK-Datei (einfach 'apk downloder' googeln und eine für Sie passende finden):
adb install com.myapp.apk
B. die Playstore-App von adb öffnen und auf Ihr Paket verweisen, das sieht so aus:
adb shell am start -a android.intent.action.VIEW -d 'market://details?id=com.myapp'
(Ich bin sicher, es kann automatisiert werden, um die notwendigen Klicks zu simulieren und die App zu installieren, aber das erfordert viel mehr Arbeit.)
Keine ist so einfach wie die Installation von Computer-cmd, aber das, was wir jetzt haben.
adb-am ()
{
adb shell am start -a android.intent.action.VIEW -d "market://details? id=$1"
}
und stellen Sie sicher, dass Sie jeden grauen Block als separate Zeile einfügen. Dann führst du es mit ausadb-am com.google.android.apps.photos
Eine Möglichkeit, das zu erreichen, was Sie wollen (zumindest teilweise), ist die Verwendung
pm install -i "com.android.vending" -r "path to apk"
In der Adb-Shell. Auf diese Weise scheint die App, obwohl sie seitlich geladen ist, aus dem Play Store installiert worden zu sein.
Wenn Sie die x- und y-Koordinaten für die Schaltflächen „Installieren“ und „Akzeptieren“ kennen, können Sie Folgendes ausführen, nachdem Sie den Markt gestartet haben und auf die App zeigen, wie Ohad Cohen angegeben hat
ADB-Shell-Eingabe-Touchscreen tippen Sie auf xy - x- und y-Koordinaten für die Schaltfläche "Installieren" mit einem Leerzeichen dazwischen
Pause für ein oder zwei Sekunden, dann laufen
ADB-Shell-Eingabe-Touchscreen tippen Sie auf xy - x- und y-Koordinaten für die Schaltfläche "Akzeptieren" mit einem Leerzeichen dazwischen
dann schließe den play store adb shell am force-stop com.android.vending
unvergesslichidUnterstütztMonica
Benny
gplaycli
github.com/matlink/gplaycli