Wie umgeht WhatsApp Doze

Fast alle Beiträge, die ich gesehen habe, deuten darauf hin, dass WhatsApp GCM nicht verwendet. Stattdessen verwendet es zwei Sockets, um mit FunXMPP zu kommunizieren.

Wie ist die App dann auf Marshmallow auch im Doze-Modus aktiv?

Ich kann mich nicht erinnern, REQUEST_IGNORE_BATTERY_OPTIMIZATIONSder Anwendung die Erlaubnis gegeben zu haben. Und ja, die App ist nicht auf der Whitelist

Antworten (1)

Ich habe WhatsApp nicht installiert, aber ich hatte eine ähnliche Frage mit Truacaller, also werde ich versuchen, ein wenig zu erklären, wie es funktioniert und wie ich Truecaller in den Ruhezustand gezwungen habe.

In Android gibt es Dienste, die durch Aktionen (Trigger) ausgeführt werden können. Wenn ein Ereignis eintritt, dh. Telefonanruf oder angeschlossen ist, wird dieses Ereignis an alle Apps gesendet, die den Telefonanrufdienst verwenden, auch wenn diese Apps im Ruhezustand sind. Einige Dienste sind kritisch und können nicht geschlossen werden, wenn das System in den Ruhezustand wechselt. Die Anwendung kann vermeiden, eingeschlafen zu werden, indem sie die Nutzung dieser Dienste meldet. Ich habe Truecaller auch keine Erlaubnis gegeben, aber es war die ganze Zeit aktiv. Ich habe es sogar mit der Vollversion von Greenify (mit Xposed-Modul) in den Ruhezustand versetzt, aber es war trotzdem aktiv.

Was ich mit Truecaller gemacht habe, war, DisableService (root erforderlich) zu installieren und zu sehen, welche Dienste von dieser App verwendet werden. Ich wusste nicht, welchen Dienst ich deaktivieren sollte, also habe ich alle deaktiviert. Die App stürzte natürlich ab, als ich versuchte, sie zu öffnen. Also aktivierte ich wiederholt einige Dienste und beobachtete, welche Funktionen wiederhergestellt wurden. Damit fand ich Dienste, die Truecaller unbesiegbar machten. Jetzt funktioniert Truecaller nur, wenn ich eine unbekannte Nummer überprüfen muss.

Die in der Antwort vorgeschlagene App existiert nicht im Play Store.
Sie können die App immer in alternativen APK-Märkten finden, indem Sie den Paketnamen googeln: cn.wq.disableservice, aber die neueste verfügbare Version ist ziemlich alt, also versuchen Sie, eine neuere Alternative zu finden