WhatsApp MessageService wird immer kurz nach dem Beenden der App beendet

Vor ein paar Tagen ist mir aufgefallen, dass ich keine WhatsApp-Nachrichten mehr erhalte, bis ich die App manuell starte, dann werden die ausstehenden Nachrichten auf einmal zugestellt.

Ich begann meine Untersuchung, indem ich die com.whatsapp.messaging.MessageServiceim Anwendungsmanager überwachte.

So sieht es zunächst aus, nachdem ich WhatsApp beendet habe:

Geben Sie hier die Bildbeschreibung ein

Und so sieht es ein paar Minuten später aus:

Geben Sie hier die Bildbeschreibung ein

Es sieht so aus MessageService, als ob es entweder beendet oder beendet wurde. Um dies zu überprüfen, habe ich mit adb nachgesehen. Ich kann den Dienst zuerst sehen:

$ adb shell dumpsys activity services | grep wh
  * ServiceRecord{43deec28 u0 com.whatsapp/.messaging.MessageService}
    intent={act=com.whatsapp.messaging.MessageService.START cmp=com.whatsapp/.messaging.MessageService}
    packageName=com.whatsapp
    processName=com.whatsapp
    baseDir=/data/app/com.whatsapp-1.apk
    dataDir=/data/data/com.whatsapp
    app=ProcessRecord{42d19f90 10037:com.whatsapp/u0a10187}

Aber dann verschwindet dieser Dienst, obwohl der Hauptprozess noch läuft:

$ adb shell ps | grep wh
u0_a187   10037 215   988084 78996 ffffffff 00000000 S com.whatsapp

Der Dienst wird nicht gleichzeitig beendet. Ich habe gesehen, dass es bereits 6 Minuten nach dem Beenden von WhatsApp und erst 11 Minuten getötet wurde. Aber in den allermeisten Fällen wird es irgendwann in der 8. Minute beendet.

Ich habe den logcatMoment der Dienstbeendigung mit der folgenden Logcat-Abfrage sorgfältig untersucht, die meiner Meinung nach nur die Dinge zum Schweigen bringt, die mir egal sind:

adb logcat -v time LightSensor:s LightsService:s  SensorService:s SensorManager:s STATUSBAR-BatteryController:s BatteryService:s HeadsetStateMachine:s android.widget.GridLayout:s MP-Decision:s SignalStrength:s McClient:s McDaemon:s QcrilMsgTunnelSocket:s | grep -v ss_tz_mobicore | grep -v ss_daemon

Ich konnte nichts in den Protokollen sehen, die darauf hinweisen würden, was mit dem Dienst passiert ist. Hat es aufgehört? Hat es etwas getötet? Wie kann ich das herausfinden?

Ich dachte, dass der Dienst vielleicht beendet wurde, weil das Betriebssystem wenig RAM hatte, aber das scheint nicht so zu sein. Hier ist der Arbeitsspeicher zum Zeitpunkt der Kündigung:

$ adb shell free -m
             total         used         free       shared      buffers
Mem:          1821         1587          234            0           75
-/+ buffers:               1511          310
Swap:          399          134          265

Während ich an diesem Problem arbeite, habe ich Titanium Backup verwendet, um alle Apps einzufrieren, die den normalen Betrieb von WhatsApp beeinträchtigen könnten, also sind dies die Apps, die ich eingefroren habe:

  • Grün machen
  • Verstärken
  • XDatenschutz

Ich habe auch "Per App Hacking" deaktiviert, was ein Xposed-Modul ist.

Irgendwelche Ideen, wie ich mehr darüber erfahren kann, warum MessageService beendet wird?

BEARBEITEN 1 : Ist es möglich, dass MessageService beendet werden soll und WhatsApp sich auf GCM verlässt, um benachrichtigt zu werden, wenn es neue Nachrichten gibt?

Antworten (1)

Ich habe genau das gleiche Problem wie du. Ich kann auch sehen, dass der MessageService-Dienst nach etwa 10 Minuten beendet wird. Nachdem der Dienst beendet wurde, werden Nachrichten nur beim Öffnen der App empfangen. Als ich heute nach diesem Problem googelte, fand ich zufällig diesen Thread, den Sie vor nur 3 Stunden gepostet hatten.

Ich verwende ein neues Telefon, auf dem ich Cyanogenmod 13 installiert habe. Ich habe bereits versucht, mehrere Einstellungen in Bezug auf Akkuverbrauch, Speicheroptimierung usw. zu ändern, aber ohne Erfolg.

Ich habe vor 2 Tagen angefangen, dieses Telefon zu benutzen, und das WhatsApp-Problem tritt seitdem auf. Morgen werde ich versuchen, Whatsapp aus dem Play Store zu deinstallieren und neu zu installieren, da dieses aus einem Titanium Backup-Backup wiederhergestellt wurde. Ich habe in einem Forum jemanden gesehen, der ein ähnliches Problem dadurch gelöst hat ... er hatte auch von einem TiBu-Backup wiederhergestellt und hatte ein solches Problem.

Übrigens scheint Ihre Theorie zu GCM in die richtige Richtung zu weisen - im Telefon meiner Frau wird der MessageService-Dienst ebenfalls nach etwa 10 Minuten beendet, sie hat jedoch keine Verzögerungen beim Empfang von WhatsApp-Nachrichten - also beruht es vielleicht tatsächlich auf GCM dafür.

Lassen Sie mich wissen, wenn Sie Fortschritte bei der Untersuchung machen oder zu einer Lösung kommen. Lassen Sie mich auch wissen, wenn ich Ihnen bei etwas anderem helfen kann.

Dies beantwortet nicht die ursprüngliche Frage.
@sickgemini: Obwohl es die Frage nicht beantwortet, ist es für mich sehr wertvoll zu wissen, dass MessageService auch nach 10 Minuten auf einem funktionierenden Telefon gestoppt wird. Es sagt mir, dass der Dienst absichtlich gestoppt wird, anstatt vom Betriebssystem beendet zu werden. Ich entferne die Ablehnung.