Ich weiß nicht, ob es zu diesem speziellen Thema schon einen Thread gibt, aber wenn ja, verzeiht es mir. Ich würde gerne wissen, wie ich das Datum sehen kann, an dem ich eine bestimmte App vor einiger Zeit installiert und deinstalliert habe (vorausgesetzt, ich habe sie aus dem Google Play-Verlauf gelöscht, also kann ich nicht so vorgehen). Ich habe einige Nachforschungen angestellt und logcat erscheint überall, aber ich sehe nicht, wie es mein Problem lösen kann. Vielen Dank im Voraus für Ihre Hilfe.
Logcat wird hier keine große Hilfe sein, da es nur eine begrenzte Zeit zurückreicht (es verwendet einen Ringpuffer mit fester Größe, sodass ältere Einträge mit neuen überschrieben werden). Konzentrieren Sie sich stattdessen besser auf den Paketmanager:
adb shell "pm list packages -u -3"
gibt Ihnen eine Liste aller Apps , die Sie installiert haben (das -3
beschränkt sich auf Apps, die nicht vorinstalliert waren – im Wesentlichen „Drittanbieter“), einschließlich derer, die Sie bereits deinstalliert haben ( -u
). Die zurückgegebene Liste sieht folgendermaßen aus:
package:com.ceco.gm2.gravitybox
package:com.mohammadag.xposedpreferenceinjector
Dies gibt Ihnen immer noch nicht die gewünschten Details, also holen Sie sich hier etwas Hilfe von Firelords Antwort :
Zuerst müssen wir das führende abschneiden package:
, also ändern wir unseren Befehl zu pm list packages -u -3 | awk -F: '{print $NF}'
:
com.ceco.gm2.gravitybox
com.mohammadag.xposedpreferenceinjector
Schon besser. Jetzt beginnt Firelord mit der Erwähnung des dumpsys
Befehls für Details, die wir in das integrieren, was wir bisher haben:
for pkg in $(pm list packages -u -3 | awk -F: '{print $NF}'); do
dumpsys package $pkg
done
Das sollte Ihnen alle Details für jede App geben, einschließlich ihres Installationsdatums ( firstInstallTime
), des letzten Updates ( lastUpdateTime
) und hoffentlich auch der Deinstallationszeit – leider tauchten auf dem Gerät, das ich gerade getestet habe, keine deinstallierten Apps auf trotz des -u
Parameters, der ein gerätespezifisches Problem sein könnte (wie die pm
Dokumentation dies eindeutig beschreibt).
Um Ihnen das Gleiche als Einzeiler zu geben, der auch unter Windows funktionieren sollte:
adb shell "for pkg in \$(pm list packages -u -3 | awk -F: '{print \$NF}'); do dumpsys package \$pkg; done"
-u
für pm
mich nichts Gutes gebracht hat.Sie können diesen Befehl unter Linux verwenden:
adb shell logcat | grep install
für install app siehe in logcat
adb shell logcat | grep uninstall
App deinstallieren siehe Logcat
Andernfalls können Sie in Windows Cygwin verwenden. Sie können von hier herunterladen
adb shell "logcat | grep install"
. Beachten Sie die Anführungszeichen: Dies sagt adb shell
aus, dass das Ganze auf Android ausgeführt werden soll – wo es sowohl den logcat
Befehl als auch grep
. Aber der Punkt ist: begrenzte Verwendung. Auf diese Weise sehen Sie vielleicht, was in den letzten Minuten passiert ist – aber sicher nicht ein paar Tage zurück.adb shell "logcat -v time | grep -i uninstall"
. Beachten Sie das -i
für Groß- und Kleinschreibung unempfindliche grep (das Protokoll hat es als "Deinstallieren") sowie den -v time
Parameter (OP wollte sehen, wann das passiert ist, nicht nur , dass es passiert ist :)
Feuerlord