Vorinstallierte Android-Apps ohne Root mithilfe von ADB deinstallieren

Zu den ersten Dingen, die ich bei der Einrichtung eines neuen Android-Gerätes vornehme, zählt das Deinstallieren nicht benötigter Apps, die auf dem Gerät bereits vorinstalliert sind. Oftmals ist es jedoch so, dass sich viele dieser Apps gar nicht vollständig deinstallieren, sondern nur deaktivieren lassen. Damit tauchen sie zwar im Launcher nicht mehr auf, finden sich aber noch immer in der Liste der installierten Apps. Zudem bin ich unsicher, ob deaktivierte Apps dennoch Aktivitäten im Hintergrund ausführen können.1

Eine Möglichkeit, sich dieser Apps vollständig zu entledigen, ist das Rooten des Gerätes, das jedoch mit gewissen Sicherheitsrisiken verbunden ist und zu Problemen mit der Garantie führen könnte.2 Eine weitere Möglichkeit ist es, ein sogenanntes Custom-ROM, d.h. eine alternative Android-Version wie z.B. LineageOS zu installieren, die bereits von Haus aus deutlich weniger Apps vorinstalliert hat. Voraussetzung dafür ist allerdings, dass es für das jeweilige Gerät ein möglichst stabiles Custom-ROM gibt.

Kürzlich habe ich jedoch eher durch Zufall eine weitere Möglichkeit entdeckt, wie man ohne das Gerät rooten zu müssen oder ein alternatives Android-System zu installieren vorinstallierte Apps, die sich eigentlich nur deaktivieren lassen, auf einfachem Wege deinstallieren kann. Die nachfolgende Anleitung basiert auf einem Tutorial von xda-developers.com . Wichtig dabei ist natürlich, dass man sich vorher informiert, welche der vorinstallierten Apps und Dienste gefahrlos deinstalliert werden können und welche zum Funktionieren des Systems erforderlich sind. Dabei gilt bei Befolgen der Anleitung, dass die Apps nur für den jeweiligen Benutzer entfernt werden. Durch das Anlegen eines neuen Benutzers oder das Zurücksetzen auf die Werkseinstellungen werden auch die Apps wieder neu installiert. Auch nach einem Systemupdate blieben die entfernten Apps bei mir entfernt.

Vorbereitung

  1. Installation der USB-Treiber auf dem Computer: Zumindest unter Windows scheint es notwendig zu sein, die entsprechenden USB-Treiber für das Android-Gerät zu installieren. Wer mit Linux oder macOS arbeitet, kann diesen Schritt überspringen. Google stellt eine Auswahl an USB-Treibern für verschiedene Hersteller auf seinen Android-Studio-Seiten zur Verfügung.

  2. Installation der Android Debug Bridge (ADB): Sofern noch nicht erfolgt, muss ADB auf dem Computer installiert werden. Dabei handelt es sich um ein Kommandozeilen-Werkzeug mithilfe dessen man auf das Android-Gerät zugreifen und dort Terminal-Befehle ausführen kann. Unter Ubuntu kann ADB aus den Paketquellen entweder mit dem Befehl sudo apt install android-tools-adb oder sudo apt install adb installiert werden. Alternativ kann die aktuellste Version in Form der Platform-Tools für Linux, macOS und Windows heruntergeladen werden.

  3. USB-Debugging auf dem Android-Gerät zulassen: Um per ADB auf das Android-Gerät zugreifen zu können, muss zunächst die Option “USB-Debugging” in den “Entwickleroptionen” aktiviert werden. Die Entwickleroptionen werden freigeschaltet, indem man in den Geräteeinstellungen auf den Menüpunkt “Über das Telefon” geht und anschließend sieben mal hintereinander auf den Punkt “Build-Nummer” tippt. Nun erscheint der neue Menüeintrag “Entwickleroptionen” in den Einstellungen und hier findet man auch die Option, USB-Debugging zu erlauben.

/img/android/USB-Debugging_aktivieren.png

USB-Debugging aktivieren

Apps mittels ADB-Shell deinstallieren

  1. Android-Gerät mit dem Computer verbinden: Als nächstes wird das Android-Gerät per USB-Kabel mit dem Computer verbunden. Um Zugriff auf das Dateisystem des Android-Gerätes zu erhalten, muss man von der Option “wird aufgeladen” auf “MTP (Medienübertragungsprotokoll)” wechseln.

  2. Per ADB auf das Android-Gerät zugreifen: Man öffnet ein Terminalfenster und navigiert als erstes, sofern ADB nicht über die Paketquellen (Linux) installiert, sondern als zip-Datei heruntergeladen wurde, in das Verzeichnis, in das man ADB entpackt hat. Nun gibt man den Befehl adb devices ein, woraufhin auf dem Android-Gerät eine Abfrage erscheinen sollte, ob das USB-Debugging zugelassen werden soll. Diese Abfrage muss bestätigt werden. Gibt man nun erneut den Befehl adb devices im Terminal ein, sollte ein Gerät aufgeführt werden.

  3. Starten der ADB-Shell: Mit dem Befehl adb shell wird die ADB-Shell gestartet.

  4. Paketnamen identifizieren: Um die Apps mittels ADB-Shell zu deinstallieren, ist es erforderlich, den genauen Paketnamen der App zu kennen. Dieser erscheint zwar nicht in den normalen App-Einstellungen unter Android, kann aber z. B. über App Inspector einfach ausgelesen werden. Alternativ kann mittels des Befehls pm list packages | grep 'Suchwort' im Terminal gezielter nach Apps gesucht werden. Der Befehl pm list packages listet alle installierten Pakete auf.

  5. App deinstallieren: Hat man den Paketnamen der App, die man deinstallieren möchte, identifiziert und ist sich sicher, dass man die App gefahrlos entfernen kann, kann die App mit dem Befehl pm uninstall -k --user 0 Paketname deinstalliert werden. Der Zusatz --user 0 bedeutet dabei, dass die App nur für den aktiven Benutzer (user 0 ist der Standardnutzer) deinstalliert wird. Nach einem Zurücksetzen auf Werkseinstellungen ist die App wieder vorhanden.


  1. https://android.stackexchange.com/questions/129427/why-are-disabled-apps-still-running ↩︎

  2. https://android.stackexchange.com/questions/164/are-there-any-risks-to-rooting-a-device ↩︎