SD Maid 2/SE
Deutsch

Diese Übersetzung ist möglicherweise veraltet. Englische Version lesen

SD Maid SE einrichten

Informationen zu den verschiedenen Einrichtungsschritten von SD Maid SE.

SD Maid passt sich an den verfügbaren Zugriff an. Alle Berechtigungen sind optional, aber wenn du keine davon gewährst, funktionieren die meisten Funktionen nicht. SD Maid arbeitet am besten, wenn alle Einrichtungsschritte abgeschlossen sind.

SD Maid versucht automatisch, einige der Einrichtungsschritte abzuschließen, wenn Root oder ADB-Zugriff verfügbar ist.

Manche Berechtigungen überschneiden sich oder schließen einander ein, z. B. kannst du SD Maid sowohl Root-Zugriff als auch ADB-Zugriff geben. SD Maid versucht für jede Aktion immer die bestmögliche Zugriffsmethode zu verwenden und, falls das fehlschlägt, es mit der zweitbesten, dann mit der drittbesten usw. erneut. Wenn du SD Maid sich überschneidende Berechtigungen gewährst, verbessert das die Zuverlässigkeit.

Tipp: Bei einigen der folgenden Einrichtungsschritte musst du ADB-Befehle ausführen. Wenn du ADB auf deinem Computer nicht eingerichtet hast, kannst du sie mit dem Web ADB Helper direkt in deinem Browser ausführen.

Speicher verwalten

Die Berechtigung „Speicher verwalten“ ist eine weitreichende Berechtigung für den Speicherzugriff.

Nutzungsstatistiken

Die Berechtigung für Nutzungsstatistiken gibt SD Maid Zugriff auf Daten- und Cache-Größen sowie darauf, ob eine App läuft oder wann sie zuletzt verwendet wurde.

Storage Access Framework

SD Maid nutzt das Android Storage Access Framework (SAF), um Zugriff auf zusätzliche Speicherbereiche zu erhalten. SD Maid bittet dich, Zugriff auf bestimmte Pfade zu gewähren, die allein mit der Berechtigung „Speicher verwalten“ nicht zugänglich sind (Just Android Things™️).

Wiederhole diesen Vorgang, bis alle Pfade grün sind.

SAF: Fehlerbehebung

Für den Fall, dass etwas nicht wie geplant läuft.

SAF: Zugriff auf Android/data|obb

Unter Android 11 und Android 12 lässt sich mit neueren Versionen der System-App Files (com.google.android.documentsui) kein Zugriff auf Android/data|obb gewähren. Wenn die installierte App Files auf Android 14 (API-Level 34) oder neuer ausgerichtet ist, blendet SD Maid die SAF-Zugriffsanfrage für diese Pfade aus (wie unter Android 13+).

Google Play aktualisiert die App Files über den Dienst Google Play system update. Die ursprüngliche App „Files“ (gebaut für API-Level 31, z. B. aml_doc_310851020 (310851020)), die mit Android 12 ausgeliefert wurde, erlaubt SD Maid, das SAF-Fenster zur Pfadauswahl für Android/Data zu öffnen, während die neueste App „Files“ (gebaut für API-Level 34 oder später, z. B. 14-10492947 (340916000)) das verhindert.

Workaround:

Du kannst das Update der App Files deinstallieren und dann SD Maid einrichten. Ein erneutes Update der App Files macht bereits gewährte Berechtigungen nicht kaputt.

oder

Du kannst diesen Befehl auch mit dem Web ADB Helper ausführen.

adb uninstall com.google.android.documentsui

SAF: OPEN_DOCUMENT_TREE ActivityNotFoundException

Um über das Storage Access Framework Zugriff auf Pfade zu gewähren, ist eine App nötig, in der der Nutzer die Pfade bestätigt, auf die Zugriff gewährt wird. Diese App ist die App „Dokumente“. Sie ist eine System-App, die seit Android 5.0 in jedes Android-Gerät eingebaut ist (com.android.documentsui oder com.google.android.documentsui). Wenn du diesen Fehler bekommst, hat jemand diese App gelöscht oder deaktiviert. Meist hat jemand ein übereifriges „Debloating“-Werkzeug ausgeführt, das sie deaktiviert hat. Du kannst sie über ADB wieder aktivieren:

Du kannst diese Befehle auch mit dem Web ADB Helper ausführen.

adb shell pm enable com.android.documentsui
or
adb shell pm enable com.google.android.documentsui

SAF: Leeres Fenster

Wenn das Fenster zum Gewähren des Zugriffs auf Pfade leer ist, ist vielleicht das Paket deines externen Speicheranbieters (com.android.externalstorage) deaktiviert (vermutlich durch ein übereifriges „Debloating“-Werkzeug). Du kannst es über ADB wieder aktivieren:

Du kannst diesen Befehl auch mit dem Web ADB Helper ausführen.

adb shell pm enable com.android.externalstorage

Wenn du das Google Play system update erneut ausführst, wird das Update wiederhergestellt. Du kannst auch manuell eine aktualisierte Version von APKMirror.com herunterladen.

Benachrichtigungen

Ohne diese Berechtigung kann SD Maid keine Benachrichtigungen anzeigen. Auf manchen ROMs kann das die Zuverlässigkeit bei der Ausführung im Hintergrund beeinträchtigen.

App-Inventar

SD Maid benötigt die Berechtigung QUERY_ALL_PACKAGES, um zu prüfen, welche Apps auf deinem Gerät installiert sind (d. h. „Sichtbarkeit des Bestands installierter Apps“). Siehe auch „Berechtigung für Nutzungsstatistiken“

Die Berechtigung QUERY_ALL_PACKAGES ist zwingend erforderlich für:

Diese Berechtigung gibt es seit Android 11, und sie wird normalerweise standardmäßig gewährt. Seit Android 14 gibt es manche Geräte (z. B. #1015, #1354), auf denen die Berechtigung nicht standardmäßig gewährt ist oder entzogen werden kann.

Ungültige App-Liste

Auf manchen Geräten ist die Berechtigung „App-Liste“ (QUERY_ALL_PACKAGES / GET_INSTALLED_APPS) gewährt, das System liefert aber trotzdem eine unvollständige Liste der installierten Apps, zum Beispiel eine Liste, in der zentrale Systempakete wie android fehlen. Wenn SD Maid das erkennt, zeigt es in der Einrichtungskarte eine Warnung „Ungültige App-Liste“ und einen Hinweis „Mögliche Geräteeinschränkung“, statt fortzufahren.

SD Maid hält hier mit Absicht an: Wenn es die vollständige Liste der installierten Apps nicht sehen kann, kann es nicht zuverlässig erkennen, welche Dateien zu einer noch installierten App gehören. Trotzdem fortzufahren könnte bedeuten, Daten einer App zu löschen, die SD Maid schlicht nicht sehen konnte. Daher bleiben app-bezogene Funktionen deaktiviert, bis eine vollständige Liste verfügbar ist.

Was du versuchen kannst:

Wenn die Berechtigung „App-Liste“ bereits erlaubt ist und die Liste trotzdem als ungültig gemeldet wird, ist das meist eine Geräteeinschränkung und nichts, was du beheben kannst: Manche Systeme (zum Beispiel HarmonyOS oder stark veränderte Android-Builds) geben Drittanbieter-Apps nie eine vollständige App-Liste. Ein Beispiel findest du in #2441.

In diesem Fall bleiben die app-bezogenen Werkzeuge (Leichenfinder, App-Reiniger, App-Kontrolle) zum Schutz deiner Daten deaktiviert, aber die Speicheranalyse funktioniert weiterhin: Sie zeigt, wie viel Platz dein Speicher belegt, nur mit weniger Details. Ordnergrößen werden schreibgeschützt angezeigt und lassen sich nicht einzelnen Apps zuordnen.

Bedienungshilfe

Die Bedienungshilfe ermöglicht SD Maid, wie ein Mensch mit deinem Gerät zu interagieren, d. h. den Bildschirm zu sehen und Schaltflächen zu drücken. SD Maid kann damit mühsame Aktionen automatisieren, etwa bei Hunderten von Apps auf „Cache leeren“ zu drücken. Die Bedienungshilfe ist ein Dienst, den die App nicht selbst starten kann. Er muss vom System gestartet werden, weil diese Art von Dienst einer App zusätzlichen Zugriff auf dein Gerät gewährt.

ACS: Fehlerbehebung

Unter verschiedenen Umständen kann der Dienst aufhören zu laufen, sodass du ihn erneut aktivieren musst:

ACS: Dienst ist deaktiviert

Manche ROMs (z. B. MIUI) sind dafür berüchtigt, rigoros alles zu stoppen, was nicht vom Gerätehersteller auf eine Whitelist gesetzt wurde. Wenn du ständig aufgefordert wirst, die Bedienungshilfe erneut zu aktivieren, deaktiviert das System sie möglicherweise jedes Mal, wenn SD Maid nicht aktiv genutzt wird.

Versuche, die Akku-Optimierungen zu deaktivieren. Auf MIUI-ROMs gibt es zusätzlich eine Einstellung namens „Autostart“, aktiviere sie für SD Maid. Für Xiaomi/POCO/Redmi-Geräte:

Du kannst auch in Betracht ziehen, eine zusätzliche Berechtigung zu gewähren, die es SD Maid erlaubt, den Dienst automatisch neu zu starten.

ACS: Durch Phone Manager blockiert (OnePlus, OPPO, Realme)

Unter OxygenOS und ColorOS kann die vorinstallierte App „Phone Manager“ die Bedienungshilfe von sich aus abschalten, typischerweise innerhalb einer Sekunde nach dem Ende einer Bereinigung. Der Bedienungshilfe-Schalter von Android ist danach tatsächlich aus, daher sieht es so aus, als hätte SD Maid mitten im Durchlauf aufgehört zu arbeiten.

Schalte die Funktion unter Phone Manager>Utilities>Block suspicious app activities aus.

Derselbe Bildschirm führt eine Liste dessen, was er blockiert hat. Einträge mit der Bezeichnung „Abnormal device control“ (Ungewöhnliche Gerätesteuerung), deren Zeitstempel zu deinen Bereinigungen passen, bestätigen, dass das die Ursache ist. Der Schalter „Blocking alerts“ (Blockierungswarnungen) daneben steuert nur, ob du benachrichtigt wirst. Mit ausgeschalteten Warnungen passiert das also unbemerkt.

ACS: Über ADB aktivieren

Wenn dein Gerät keine Möglichkeit bietet, Bedienungshilfen über den Bildschirm zu aktivieren (z. B. ein TV-Gerät), kannst du den Dienst über ADB mit folgendem Befehl aktivieren:

Du kannst diesen Befehl auch mit dem Web ADB Helper ausführen.

adb shell settings put secure enabled_accessibility_services eu.darken.sdmse/.automation.core.AutomationService

ACS: Automatischer Neustart des Dienstes

Hinweis: Das ist eine fortgeschrittene Technik und richtet sich an Power-User.

Du kannst eine zusätzliche Berechtigung gewähren, mit der SD Maid den Dienst selbst neu starten kann. Die Berechtigung heißt WRITE_SECURE_SETTINGS und kann nur über ADB gewährt werden. Wenn du das eingerichtet hast, führe diesen Befehl aus, um die Berechtigung zu gewähren:

Du kannst diesen Befehl auch mit dem Web ADB Helper ausführen.

adb shell pm grant eu.darken.sdmse android.permission.WRITE_SECURE_SETTINGS

Mit dieser Berechtigung kann SD Maid den hier beschriebenen Befehl nutzen, um den Dienst bei Bedarf zu aktivieren. SD Maid nutzt das nur, wenn du die Bedienungshilfe mindestens einmal manuell aktiviert hast. Wenn du erneut in die Einrichtung gehst und SD Maid anweist, die Bedienungshilfe nicht zu verwenden, wird diese Technik zum automatischen Neustart nicht mehr genutzt, bis du die Bedienungshilfe wieder manuell aktivierst.

Um SD Maid diese Berechtigung wieder zu entziehen, verwende diesen Befehl:

Du kannst diesen Befehl auch mit dem Web ADB Helper ausführen.

adb shell pm revoke eu.darken.sdmse android.permission.WRITE_SECURE_SETTINGS

Wenn du Operation not allowed: java.lang.SecurityException erhältst, sieh hier. Manche Geräte schränken ADB-Berechtigungen ein. Prüfe, ob es in den Entwickleroptionen eine zusätzliche Einstellung gibt (z. B. Disable Permission Monitoring), die umgeschaltet werden muss. Nachdem du den Befehl ausgeführt hast, kannst du sie wieder deaktivieren.

ACS: Erweiterter Schutz

Unter Android 17 und neuer verhindert der Modus Erweiterter Schutz (Advanced Protection) von Google, dass Apps, die keine reinen Bedienungshilfe-Werkzeuge sind (Screenreader, Schalterzugriff usw.), die Bedienungshilfe nutzen. SD Maid ist ein Wartungs- und Reinigungswerkzeug, daher kann seine Bedienungshilfe nicht aktiviert werden, solange der Erweiterte Schutz eingeschaltet ist. Android lehnt den Dienst auf Systemebene ab, selbst wenn du versuchst, ihn über Root oder ADB-Zugriff zu gewähren.

SD Maid kann sich davon nicht selbst ausnehmen: Nur Apps, die Google als Bedienungshilfe-Werkzeuge einstuft, kommen in Frage, und Reinigungs-Apps sind ausdrücklich ausgeschlossen.

Du hast zwei Möglichkeiten:

ACS: AppOps-Einschränkungen

Android 13+ kann zusätzliche Einschränkungen auf Apps anwenden, die per Sideloading installiert wurden. Wenn SD Maid also nicht aus einer (Google) bekannten Quelle wie Google Play oder anderen App-Stores installiert wurde, kannst du SD Maid manche Berechtigungen möglicherweise nicht direkt gewähren, z. B. eine Bedienungshilfe starten.

OxygenOS 15 - OnePlus

OnePlus hat in OxygenOS 15 vergessen (oder schlicht darauf verzichtet), die Aktion Allow restricted settings („Eingeschränkte Einstellungen zulassen“) in die App-Einstellungen aufzunehmen. Wenn du nicht über Google Play installierst, muss das Installationsprogramm das Flag INSTALL_ALL_WHITELIST_RESTRICTED_PERMISSIONS setzen. Wenn du Shizuku eingerichtet hast, kannst du die App „Install with Options“ verwenden.

Andere ROMs

Um diese Einschränkungen aufzuheben, öffne im System den Bildschirm mit den App-Einstellungen von SD Maid. Öffne das Menü oben rechts und wähle Eingeschränkte Einstellungen zulassen. Danach kannst du zur Liste der Bedienungshilfen zurückgehen und den Dienst von SD Maid aktivieren.

Hinweis: Um die Benutzerfreundlichkeit zu verbessern (das ist Sarkasmus), hat Google entschieden, dass diese Einstellung nur sichtbar ist, wenn:

😮‍💨

Einige zusätzliche Hintergrundinformationen findest du hier.

Root-Zugriff

Mit Root-Zugriff hat SD Maid vollen Zugriff auf dein Gerät und kann den gründlichsten Scan durchführen. Meist bedeutet das, dass du deinen Bootloader entsperrt und Magisk eingerichtet hast.

Wenn SD Maid annimmt, dass dein Gerät gerootet sein könnte, fragt SD Maid zuerst nach Root-Zugriff. Wird Root-Zugriff gewährt, nutzt SD Maid ihn, um so viele der anderen Berechtigungen wie möglich zu gewähren. Root-Zugriff ist die höchste Zugriffsstufe, die du einer App geben kannst. Die anderen Berechtigungen sind dann nur noch für Komfort und Leistung nötig, weshalb sie während der Einrichtung keine zusätzliche Zustimmung erfordern, wenn SD Maid bereits Root hat.

ADB-Zugriff

Mit ADB-Zugriff kann SD Maid die Debugging-Schnittstelle von Android (ADB) für erweiterte Vorgänge nutzen. Dafür ist eine separate App nötig, die einen ADB-Dienst auf deinem Gerät betreibt und anderen Apps Zugriff darauf gewährt: Porter oder Shizuku. Es ist eine Modifikation an deinem Handy, die auch andere Apps nutzen können.

Sie ähnelt Root, ist aber nicht dasselbe. Die Berechtigungen sind etwas weniger mächtig, dafür ist die Modifikation nicht dauerhaft und erfordert kein Entsperren des Bootloaders.

Porter

Porter ist mein gepflegter Fork von Shizuku, mit optionaler Root-Unterstützung. Auf seiner Website steht, wie du es installierst und startest. Unter Android 11 und neuer kannst du es per kabellosem Debugging ohne Computer starten.

Wenn du ADB-Zugriff zum ersten Mal einrichtest, verwende Porter. Die SD-Maid-Builds von GitHub und F-Droid verweisen dich auf Porter, wenn keine App für ADB-Zugriff installiert ist. Der Google-Play-Build verweist dich auf Shizuku bei Google Play, funktioniert aber genauso mit Porter.

Wenn sowohl Porter als auch Shizuku installiert sind, verwendet SD Maid Porter. Die Einrichtungskarte zeigt dann Porter ist installiert, daher wartet SD Maid auf Porter statt auf Shizuku. Starte Porter, um fortzufahren, oder deinstalliere es, wenn SD Maid Shizuku verwenden soll.

Shizuku verwenden

Es gibt zwei Builds von Shizuku:

Beide lassen sich nicht gleichzeitig installieren. Wenn das Original bei dir bereits funktioniert, musst du nicht wechseln.

Zugriff gewähren

Nachdem du Porter oder Shizuku eingerichtet hast:

Wenn du SD Maid bereits Root-Zugriff gewährt hast, schaltet das Einrichten von ADB-Zugriff keine zusätzlichen Funktionen frei, verbessert aber die Zuverlässigkeit. Wenn Aktionen mit Root-Berechtigung fehlschlagen, versucht SD Maid es erneut mit ADB-Zugriff.

ADB-Zugriff: Fehlerbehebung

Den Status des ADB-Zugriffs von SD Maid kannst du unter Einstellungen > Einrichtung auf der Einrichtungskarte ADB-Zugriff prüfen. Dort sollte SD Maid kann jetzt ADB-Zugriff über Porter nutzen. (bzw. über Shizuku) stehen.

Shizuku verbindet sich nie

Die Karte zeigt ADB-Zugriff fehlgeschlagen und Shizuku läuft, konnte SD Maid jedoch nicht mit seinem Hilfsdienst verbinden. Ältere Versionen zeigten Waiting for link with Shizuku oder Shizuku link failed.

Öffne die App Shizuku. Wenn dort steht, dass es läuft, und SD Maid in der Liste der autorisierten Apps steht, ist Shizuku korrekt eingerichtet, und eine erneute Einrichtung hilft nicht. Was fehlschlägt, ist der Hilfsdienst von Shizuku: Er stürzt beim Start ab, bevor er sich zurückmelden kann, und SD Maid gibt nach etwa 15 Sekunden auf. Erneut versuchen führt dieselbe Prüfung aus und scheitert auf dieselbe Weise.

Das ist ein Fehler in Shizuku (RikkaApps/Shizuku#1198), nicht in SD Maid, und er betrifft jede App, die den Hilfsdienst von Shizuku nutzt. Betroffen sind MediaTek-Geräte sowie Geräte mit HyperOS oder MIUI.

Der Fork von thedjchi behebt das Berichten zufolge. So wechselst du: