Android beendet normalerweise Hintergrundprozesse, wenn sie keine dauerhafte Benachrichtigung haben. Warum werden Apps wie WhatsApp und Facebook nicht gelöscht?
Android beendet normalerweise Hintergrundprozesse, wenn sie keine dauerhafte Benachrichtigung haben.
Nun, meistens ist dies der Fall, aber Android OutOfMemory Killer (die Komponente in Android, die für das Beenden von Prozessen verantwortlich ist) verwendet ziemlich komplexe Logik und Kriterien, um Apps und Prozesse zu beenden, die diese Apps hosten.
In Android läuft jede Anwendung in einem Linux-Prozess. In jedem Linux-Prozess läuft eine virtuelle Maschine (Dalvik Virtual Machine oder ART Virtual Machine). Der Speicher, den ein Prozess beanspruchen kann, ist begrenzt und ist für verschiedene Geräte und auch für Telefone und Tablets unterschiedlich.
Wenn Android wenig Speicherplatz hat (möglicherweise, weil so viele Apps gleichzeitig auf einem Gerät ausgeführt werden), kommt der OutOfMemory-Killer ins Spiel und beginnt, Prozesse von Apps zu beenden, die sich zuerst im Hintergrund befinden .
Jetzt verwenden Apps wie WhatsApp, Facebook sogenannte Service- und Push-Benachrichtigungsmechanismen. Der Dienst ermöglicht es der App, einen im Hintergrund ausgeführten Code auszuführen, und selbst wenn die App von OOM Killer getötet wird, kann der Dienst von Android erneut gestartet werden, wenn genügend Speicher verfügbar ist, um ihn auszuführen.
Warum werden Apps wie WhatsApp und Facebook nicht getötet?
Dies ist nicht wahr, da Android Apps basierend auf ihrem Status (z. B. Vorder- oder Hintergrund) beenden kann. Es ist nur so, dass die Apps und ihre Komponenten (z. B. Dienste) neu gestartet werden, wenn sie Push-Benachrichtigungen erhalten, damit der Benutzer mit der App interagieren kann.
Wenn also eine Push-Benachrichtigung empfangen wird (d. h. eine WhatsApp-Nachricht), kann Android die Komponente der getöteten App (in diesem Fall WhatsApp) neu starten.
Auf diese Weise verbirgt Android die komplexen Details der Speicherverwaltung und der Prozessverwaltung vor dem Benutzer und stellt sicher, dass der Benutzer problemlos mit einer App interagieren kann.
Izzy
jiggunjer