Wakelocks unter Android aufspüren: wenn der Akku ungewöhnlich schnell leer geht

Wakelocks sind unter Android häufig die Ursache für einen ungewöhnlich hohen Akku-Verbrauch. Mit der App Wakelock Detector lassen sich Anwendungen aufspüren, die das Smartphone am Tiefschlaf hindern und den Akku schneller leeren, als üblich.

Smartphones sind nicht gerade dafür bekannt, eine besonders lange Akkulaufzeit zu haben. Jedes Android-Smartphone muss in der Regel nach einem oder spätestens zwei Tagen an das Ladegerät gehängt werden. Damit der Akku etwas länger hält, gibt es eine Reihe grundlegender Tipps wie das Verringern der Display-Helligkeit, Ausschalten der automatischen Synchronisierung oder Deaktivieren gerade nicht benötigter Datenverbindungen wie WLAN, GPS oder Bluetooth. Geht dem Akku ungewöhnlich schnell der Saft aus, liegt dies jedoch nicht daran, dass man vergessen hat das WLAN auszuschalten, sondern hat andere Ursachen. Häufig führen sogenannte Wakelocks installierter Apps dazu, den Akku-Verbrauch unverhältnismäßig in die Höhe schnellen zu lassen.

wakelock_1

Wakelocks sind ein Teil der Power-Management-Funktionen von Android, die von Entwickler dazu verwendet werden können, um das Android-Gerät aus dem Tiefschlaf-Modus aufzuwecken oder es daran zu hindern, in diesen zu wechseln. In den Deep-Sleep-Modus begibt sich das Android-System normalerweise eine gewisse Zeit nachdem das Display des Smartphones ausgeschaltet wird. In diesem Modus wird unter anderem die Taktrate der CPU auf ein Minimum heruntergefahren, um Strom zu sparen. Wakelocks wecken die CPU und den Kernel wieder auf oder halten das Display am Laufen. Grundlegend sind sie eine sinnvolle Funktion. Dank Wakelocks wird beispielsweise beim Anschauen eines Youtube-Videos verhindert, das ständig das Display ausgeht. Wakelocks dienen weiterhin zum Aufwecken der CPU aus dem Ruhemodus, damit Apps oder Dienste beispielsweise Daten synchronisieren, die E-Mails abrufen oder den Standort aktualisieren können.

Ist beispielsweise das Abrufen von E-Mails im Hintergrund vom Nutzer erwünscht, benötigt dies auch Strom. In der Regel sind Entwickler bemüht, derartige Hintergrundaktivitäten so zu integrieren, dass sie nur mäßig den Akku belasten.  Allerdings gibt es auch immer wieder schlecht programmierte Apps oder Bugs in Anwendungen, die eine übermäßige Anzahl an ungewollten Wakelocks verursachen, das Smartphone ständig aus dem stromsparenden Tiefschlaf-Modus aufwecken und dadurch den Akku unverhältnismäßig strapazieren.

Häufig lässt sich eine merklich verringerte Akkulaufzeit daher auch mit kürzlich installierten Anwendungen in Verbindung bringen. Unter Umständen hat man aber gar keine neue App installiert und der Akku hält trotzdem plötzlich nur noch einen halben Tag – oder sogar kürzer. In solch einem Fall könnte sich beispielsweise ein Fehler in eine Anwendung oder einen Dienst durch ein automatisches Update eingeschlichen haben, dass der Nutzer im Grunde nur nebenbei registriert.

Mit Apps wie Wakelock Detector oder BetterBatteryStats können Android-Nutzer den Wakelocks auf die Spur kommen und die Anwendungen identifizieren, die diese verursachen. Dadurch lässt sich herausfinden, welche Apps bei ausgeschaltetem Display das Smartphone regelmäßig aus dem Tiefschlaf aufwecken und die Akkulaufzeit negativ beeinflussen.

Wir haben auf den Wakelock Detector gesetzt, der kostenlos im Google Play Store erhältlich ist. Um mit ihm Wakelocks aufzuspüren, sollten unter Android 4.4 KitKat am besten Root-Rechte vorhanden sein. Ein einfach zu handhabendes Tool, um sein Smartphone zu rooten, ist Towelroot. Leider funktioniert es nicht mit allen Geräten. Das Sony Xperia Z2 und das HTC One M8 ließen sich im Praxistest unserer Schwesterseite ZDNet.de damit beispielsweise nicht entsperren.

Wakelocks unter Android aufspüren: wenn der Akku ungewöhnlich schnell leer wird

Mit dem Tool Towelroot lassen sich zahlreiche Smartphones wie das Nexus 5 rooten. Mit einem HTC One (M8) oder Sony Xperia Z2 klappt dies aber leider nicht (Screenshot: CNET.de).

Wer sein Smartphone nicht rooten möchte, muss auf einen Workaround zurückgreifen, der mehr Aufwand verursacht. Hierfür werden Googles USB-Treiber und die ADB-Tools samt Fastboot benötigt. Hier geht’s zur Anleitung. Die Schritte müssen jedes Mal nach einem Reboot des Telefons erneut durchgeführt werden. Wer beispielsweise noch Android 4.3 installiert hat, benötigt keine Root-Rechte. Auch BetterBatteryStats benötigt übrigens für die meisten Funktionen Root-Zugriff.

Sind die Voraussetzungen erfüllt und der Wakelock Detector installiert und gestartet, zeigt das Tool eine Liste mit Anwendungen an, die seit dem letzten Laden des Gerätes Wakelocks ausgelöst haben. Grundlegend listen das Tool alle Apps auf die Wakelocks hervorrufen, also auch diejenigen, die womöglich vom Android-Nutzer erwünscht sind – wie das Abrufen der E-Mails. Beim ersten Start müssen Nutzer dem Wakelock Detector unter Umständen erst etwas Zeit geben und das Smartphone ein bis zwei Stunden laufen lassen, bis Statistiken vorliegen. Dabei kann man das Gerät wie gewohnt nutzen. Am besten ist jedoch es einfach im Standby-Modus liegen zu lassen.

Sind die Daten von der App erfasst empfiehlt es sich zunächst, in den Einstellungen, die über das Punkte-Symbol in der rechten, oberen Ecke zu erreichen sind, den erweiterten Modus zu aktivieren, sodass auch Systemprozesse von Android angezeigt werden. Denn auch Googles Dienste können dafür sorgen, dass der Akku nicht mehr lange hält, wie unter anderem zahlreiche Besitzer eines Sony Xperia Z feststellen mussten. Eine Version der Google Play Services hatte vermutlich aufgrund eines Bugs zu einer drastisch reduzierten Akkulaufzeit geführt.

Wakelocks unter Android aufspüren: wenn der Akku ungewöhnlich schnell leer wird

Über die Einstellungen lässt sich der erweiterte Modus aktivieren, sodass auch Systemprozesse von Android angezeigt werden. Das Ändern der Sortierung sowie die Auswahl der anzuzeigenden Wakelocks klappt über die Symbolleiste (Screenshot: CNET.de).

Alle Anwendungen und Dienste werden vom Wakelock Detector standardmäßig nach dem Verbrauch sortiert, können aber auch nach den Kriterien „Alphabetisch“ oder „Aktivität“ geordnet werden. Wakelocks, die die CPU betreffen sind in der Regel diejenigen, die einen hohen Akku-Verbrauch verursachen, den sich der Nutzer nicht erklären kann, da sie im Verborgenen passieren, wenn der Bildschirm des Smartphones ausgeschaltet ist und das Gerät nicht genutzt wird. Der Wakelock Detector zeigt diese in der Standardeinstellung an. Falls nicht, lässt sich die entsprechende Option neben Bildschirm- und Kernel-Wakelocks sowie WakeUp-Trigger über das entsprechende Symbol in der Leiste am oberen Bildschirmrand auswählen.

Wer mit einem übermäßig hohen Akkuverbrauch aufgrund von Wakelocks zu kämpfen hat, bei dem wird in der Statistik direkt unter der Symbolleiste ein hoher Prozentwert für „Wach“ ausgewiesen werden. In unserem Fall beträgt die Wachzeit nur 2 Prozent von einer Gesamtlaufzeit von 1 Tag und 11 Stunden. Dies ist ein guter und nicht übermäßig hoher Wert. Bedenkliche Werte beginnen in etwa bei über 25 Prozent. Ein Fingertipp auf die Statistik holt eine noch etwas ausführlichere Übersicht auf den Bildschirm, die aufdeckt, dass sich unser Gerät insgesamt 1 Tag und 3 Stunden im Tiefschlaf – also dem angestrebten Zustand – befunden hat. Die Gesamt-Wach-Zeit beträgt 7 Stunden und 39 Minuten, wovon 6 Stunden und 36 Minuten der Bildschirm aktiviert war – wir also aktiv am Smartphone etwas gemacht haben. 1 Stunde und 2 Minuten haben dagegen Wakelocks von Apps unserer Gerät wachgehalten.

Ganz oben in der Liste, sofern sie nach Verbrauch sortiert ist, hält der Wakelock Dector nun die Apps und Dienste bereit, die unser Smartphone am längsten vom Tiefschlaf abgehalten und den meisten Akku verbraucht haben. Systemdienste wie „Android-System“, „1013“ oder „Google-Dienste“ tauchen auf Geräten, die keine großen Akkuprobleme haben, stets weit oben auf, weisen aber keine hohen Wachhaltezeiten auf. In unserem Fall ist nach „1013“ „WhatsApp“ die Anwendung, die unser Gerät am häufigsten aufgeweckt hat. Sie hat es insgesamt für 30 Minuten und 41 Sekunden beschäftigt. Da wir sie in der gesamten Zeit nicht einmal aktiv genutzt haben, ist klar, dass hier Hintergrundoperationen im Spiel sind. Smartphone-Besitzer mit Akkuproblemen werden an der obersten Stelle natürlich Apps oder Dienste finden, die deutlich höhere Werte aufweisen.

Wakelocks unter Android aufspüren: wenn der Akku ungewöhnlich schnell leer wird

Per Fingertipp lassen sich detaillierte Statistiken zur Tiefschlaf- und Wachzeit abrufen. Der Prozess „fullsync“ von WhatsApp verursacht einen Wakelock. Er hat unser Gerät für insgesamt 30 Minuten und 26 Sekunden wachgehalten (Screenshot: CNET.de).

Ein Klick auf einen Eintrag zeigt nun detailliert an, welche Prozesse Wakelocks ausgelöst und für welche Dauer diese das Gerät vom Tiefschlaf abgehalten haben. Die Zahlen am Ende eines Balkens wie „x35“ zeigen übrigens an, wie häufig ein Prozess einen Wakelock (auch WakeUp-Trigger genannt) hervorgerufen hat. In unserem Beispiel ist der WhatsApp-Prozess „fullsync“ der Hauptverantwortliche und hat unser Smartphone 35 Mal aus dem Tiefschlaf gerissen.

Wakelocks unter Android aufspüren: wenn der Akku ungewöhnlich schnell leer wird

Neben CPU-Wakelocks gibt es auch Bildschirm- (links) und Kernel-Wakelocks (mitte). WakeUp-Trigger (rechts) informieren darüber, wie häufig eine App das Android-Smartphone aus dem Tiefschalf aufgeweckt hat (Screenshot: CNET.de).

Nachdem Smartphone-Besitzer die übermäßigen Akku-Verbraucher ausfindig gemacht haben, stehen ihnen verschiedene Vorgehensweise zur Auswahl. Das einfachste ist es natürlich, die entsprechende App – also in unserem Fall WhatsApp – einfach zu deinstallieren und das Problem ist gelöst. Da wir den Instant Messenger aber weiterhin verwenden wollen, ist das für uns keine sonderlich befriedigende Option. Auch Systemdienste wie die Google Play Services oder „1013“ lassen sich natürlich nicht einfach löschen. Was Anwender in solch einem Fall machen können, ist, eine Google-Suche – in unserem Fall beispielsweise nach den Begriffen „WhatsApp“, „Wakelock“ und „fullsync“ – zu starten und das Web nach einer möglichen Lösung für das Akkuproblem zu durchsuchen. In der Regel findet man in diversen Foren stets andere Smartphone-Besitzer, die dasselbe Problem haben und eventuell schon auf eine Lösung gestoßen sind. Womöglich gibt es bereits eine neuere Version der Anwendung oder des Dienstes oder Funktionen, die sich abschalten lassen. Vielleicht hilft es auch, eine frühere Version einer App zu installieren, die noch nicht die zum hohen Akku-Verbrauch führenden Fehler enthielt.

Nicht selten muss man aber auch auf ein Update seitens des Herstellers warten. Wollen wir WhatsApp trotzdem nicht vorläufig löschen, um unseren Akku zu schonen, hilft uns die App Greenify. Sie ist kostenlos im Google Play Store erhältlich und versetzt die Hintergrundprozesse von Anwendungen in einen Ruhezustand. Der volle Funktionsumfang ist wieder nur mit Root-Zugriff nutzbar. Seit Version 2.0 bringt Greenify aber auch einen Modus für Smartphones ohne Root-Rechte mit. Dieser befindet sich aktuell aber noch in einer frühen Entwicklungsphase und enthält nicht alle Features der App.

Wakelocks unter Android aufspüren: wenn der Akku ungewöhnlich schnell leer wird

Greenify versetzt die Hintergrundprozesse einer Android-App in einen Ruhezustand und unterbindet mögliche Wakelocks. Allerdings schränken sich dadurch auch die Funktionen der Anwendung ein (Screenshot: CNET.de).

Haben wir WhatsApp mit Greenify in den Winterschlaf versetzt, werden keine Wakelocks mehr von dem fullsync-Prozess verursacht, nutzen lässt sich die App aber nach wie vor. Benachrichtigungen über neue Nachrichten erhalten wir nun aber nicht mehr, sondern erst wenn wir den Messenger aufrufen. Dieser Kompromiss ließe sich allerdings noch im Austausch für eine normalisierte Akkulaufzeit verkraften, bis der Hersteller ein Update geliefert hat. Push-Nachrichten lassen sich grundlegend aber auch wieder über die experimentellen Features der Greenify-App aktivieren. Dafür ist allerdings die Bezahl-Version, Root sowie die Installation des Xposed-Frameworks nötig.

Mit Greenify lassen sich auch nicht nur installierte Apps, sondern auch System-Apps wie die Google Play Services in den Ruhestand versetzen. Die Option für System-Anwendungen findet sich in Einstellungen ebenfalls unter dem Punkt „experimentelle Features“. Dazu ist auch das Spenden-Paket nötig. Es kostet 2,29 Euro und ist über den Google Play Store erhältlich. Der Entwickler gewährt ein siebentägiges Rückgaberecht. Um die experimentelle Funktionen für Systemapps nutzen zu können, müssen Anwender wie bereits erwähnt das Xposed-Framework installieren. Dieses ist nur zu Android-Geräten mit Android 4.0.3 oder später und Root-Zugriff kompatibel. Ein Fingertipp auf die Option „Greenifying Systemapps“ in den Greenify-Einstellungen startet einen Assistenten, der durch die Installation führt.

xposed_1

Xposed-Installer herunterladen (Screenshot: CNET.de).

Als erstes wird der Installer für das Xposed-Framework heruntergeladen und dann per Fingertipp geöffnet. Dafür  muss in den Geräteeinstellungen die Option “Unbekannte Quellen” kurzfristig aktiviert werden. Anschließend muss das Xposed-Framework installiert und das Gerät neugestartet werden. Zuvor sollten Smartphone- und -Tablet-Besitzer ein Backup all ihrer Daten anlegen, da es unter Umständen zu einem „Soft Brick oder „Bootloop“ kommen kann. In unserem Fall hat der Installationsvorgang auf einem Nexus 5 ohne Probleme geklappt und das Gerät anschließend wie erwartet neugestartet.

xposed_greenifydonate_1

Xpsoed-Framework und Greenify-Spenden-Paket installieren (Screenshot: CNET.de).

Als nächstes lädt man sich das Spenden-Paket aus dem Play Store herunter. Dieses erstellt ein neues Icon auf dem Homescreen, das man anklicken muss, um das Spenden-Paket zu aktivieren. Ruft man nun wieder die Hauptanwendung auf, sollte es von Greenify erkannt werden. Falls noch der Bildschirm mit den Einstellungen geöffnet ist, muss dieser erst per Zurück-Taste verlassen werden. Wenn das Spenden-Paket aktiv ist, erscheint ein Dialog-Fenster. Danach lässt sich über die Einstellungen für die experimentellen Features der Greenify-Hauptanwendung die Option „Greenifying Systemapps“ aktivieren und die Google Play Dienste in den Ruhezustand versetzen. Damit sie in der Liste erscheinen, muss noch die Option „Zeig mir alle“ über das Punkte-Icon angewählt sein. Die Google Play Dienste versetzt Greenify allerdings nicht automatisch in den Ruhezustand, wie es bei installierten Apps der Fall ist. 

greenify_system_1

Option „Greenifying Systemapps“ aktivieren und Systemapps wie die Google Play Dienste in den Ruhezustand versetzen (Screenshot: CNET.de).

Eine weitere Möglichkeit ist, die Wakelocks einer App oder eines Dienstes mittels der Anwendung Wakelock Terminator zu unterbinden. Sie steht kostenlos im Google Play Store zum Download bereit. Ist sie installiert und gestartet hält sie eine Liste mit allen Anwendungen bereit. Mit einem Fingertipp auf einen Eintrag lassen sich alle von einer App ausgehenden Wakelocks abschalten. Über eine Filterfunktion können auch einzelne Prozesse ausgenommen werden. Dazu trägt man den entsprechende Namen, wie er im Wakelock Detector angeführt wird, unter Filter Wakelock ein.

wakelock_terminator

Wakelocks einer App unterbinden (Screenshot: CNET.de).

In der derselben Art und Weise können Smartphone-Besitzer nun bei allen Apps vorgehen, die sie als besondere Akku-Verbraucher identifiziert haben.

Tipp: Sind Sie ein Android-Kenner? Überprüfen Sie Ihr Wissen – mit 15 Fragen auf silicon.de

Autor: Christian Schartel
Christian Schartel Christian Schartel Christian Schartel

Neueste Kommentare 

3 Kommentare zu Wakelocks unter Android aufspüren: wenn der Akku ungewöhnlich schnell leer geht

  • Am 18. August 2014 um 20:02 von gonzo99

    Sehr gut gemachter Artikel zum Thema Wakelocks.
    Der Tipp mit dem Wakelock-Detector hat mich auf die Spur des Stromfressers auf meinem SGS2 gebracht, der Akku war trotz geringer Nutzung (Meist liegt es nur herum und holt Emails und Whatsapp ab) i.d.R. nach einem Tag leer.
    Der größte Wakelock-Verbraucher war ein seit Urzeiten installierter Reminder für entgangene Anrufe und SMS, den ich schon kurz nach dem Kauf vor 3,5 Jahren unter 2.3.4 installiert und durch jedes Update bis 4.1.2 mitgeschleppt habe. Damit lag die Wach-Zeit bei 24%.
    Jetzt und nach einigen Einstellungsänderungen bei K-9 (Ständiges Abholen abgeschaltet, nur noch Push-Erneuerung alle 36min) liegt die Wachzeit bei 5%. Nach 1d 19h Betrieb seit dem letzten Aufladen hat der Akku noch 67% Kapazität, das ist ein sagenhafter Wert den ich in 3,5 Jahren Benutzung nie erreicht habe.
    Vielen Dank!

    • Am 19. August 2014 um 10:04 von Christian Schartel

      Hallo,

      viele Dank! Freut uns, dass Ihnen der Artikel weitergeholfen hat.

      Beste Grüße, CNET.de-Redaktion

  • Am 13. Januar 2016 um 23:46 von stewisch

    Der Artikel hat mich auf den „1 Tap Hibernate“ Modus vom CleanMaster gebracht. Ich werde nun mal damit (ohne root) versuchen, die Akkulaufzeit meines S5 mini zu erhöhen – und das nächtliche Laden zu verbessern. Trotz Flugmodus konnte ich ein permanentes „Aufwachen“ verzeichnen, das sich tagsüber nur sehr sporadisch im Akkunutzungs-Diagramm findet.
    Ich bin gespannt, sage für den Tipp aber schon mal herzlich „Dankeschön“.

Schreib einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *