Az Android általában megöli a háttérfolyamatokat, ha nem kapnak állandó értesítést. Miért nem ölnek meg olyan alkalmazásokat, mint a WhatsApp és a Facebook?
Az Android általában megöli a háttérfolyamatokat, ha nem kapnak állandó értesítést. Miért nem ölnek meg olyan alkalmazásokat, mint a WhatsApp és a Facebook?
Az Android általában megöli a háttérfolyamatokat, ha nincs folyamatos értesítésük.
Leggyakrabban ez a helyzet, de az Android OutOfMemory Killer (az Android összetevője, amely felelős a folyamatok megöléséért) meglehetősen összetett logikát és kritériumokat alkalmaz az alkalmazások és folyamatok megölésére, amelyek ezeket az alkalmazásokat tárolják.
Android-ban minden alkalmazás Linux-folyamatban fut. Minden Linux-folyamatban van egy virtuális gép (Dalvik virtuális gép vagy ART virtuális gép). Van egy korlát a memória számára, amelyet egy folyamat megkövetelhet, és ez különböző a különböző eszközöknél, és különbözik a telefonok és a táblagépek esetében is.
Ha az Androidon kevés a memóriaterület (lehet, hogy annyi alkalmazás fut egyszerre egy eszközön), az OutOfMemory gyilkos képbe kerül, és megkezdi a háttérben erős > először.
Most például az olyan alkalmazások, mint a WhatsApp, a Facebook úgynevezett Service and Push értesítési mechanizmusokat használnak. A szolgáltatás lehetővé teszi az alkalmazás számára, hogy a háttérben futó bizonyos kódokat futtasson, és annak ellenére, hogy az alkalmazást az OOM Killer megöli, az Android újraindíthatja a szolgáltatást, ha elegendő memória áll rendelkezésre a futtatásához.
Miért nem ölnek meg olyan alkalmazásokat, mint a WhatsApp és a Facebook?
Ez nem igaz, mivel az Android az állapotuk (például az előtér vagy a háttér). Csak arról van szó, hogy az alkalmazásokat és azok összetevőit (például a Szolgáltatást) újraindítják, amikor push értesítéseket kapnak, hogy a felhasználó interakcióba léphessen az alkalmazással.
Tehát, amikor és mikor érkezik a push értesítés ( jelentése WhatsApp üzenet), az Android újraindíthatja az elölt alkalmazás összetevőjét (ebben az esetben a WhatsApp programot).
Így az Android elrejti a memóriakezelés és a folyamatkezelés összetett részleteit a felhasználók elől, és biztosítja, hogy a felhasználó probléma nélkül léphessen kapcsolatba egy alkalmazással.