Android's Low Memory Killer aggressively terminates background apps on 4-6GB devices, destroying user state and breaking multi-app workflows

hardware0 views
Android's Low Memory Killer Daemon (LMKD) monitors system memory pressure and terminates background apps ranked by oom_adj_score when free RAM drops below configurable thresholds. On devices with 4-6GB RAM (which represents the majority of active Android devices globally, particularly in emerging markets), having 3-4 apps in the background regularly triggers LMKD, killing apps that the user expects to remain active. So what? Users switching between a messaging app, a ride-hailing app, and a payment app find that the first app has been killed and must cold-start (2-5 seconds), losing draft messages, navigation state, or half-completed payment flows. So what? In markets like India, Southeast Asia, and Africa where budget 4GB phones dominate and mobile is the primary computing device, this creates a fundamentally degraded computing experience where 'multitasking' is functionally broken. So what? App developers must implement complex state persistence (onSaveInstanceState, ViewModel persistence, Room database caching) to survive process death, adding 20-40% development overhead to every feature that involves multi-step user flows. So what? Many developers, especially small teams building for emerging markets, skip this work, resulting in apps that lose user progress unpredictably, which users blame on the app rather than the OS memory management. So what? This creates a vicious cycle where users in memory-constrained markets have the worst app experiences despite being the fastest-growing user base, and app quality perception drives users toward super-apps (WeChat, Grab) that keep a single process alive rather than diverse app ecosystems. This persists because OEMs race to minimize BOM costs (RAM is 8-12% of phone cost), Google sets minimum RAM requirements too low (2GB for Android Go), and the LMKD algorithm optimizes for system stability rather than user experience continuity.

Evidence

Android developer documentation explicitly describes the Low Memory Killer's priority-based process termination. Google's Android Vitals tracks excessive background process kills as a quality metric. Developer community discussions document apps being killed despite low individual memory usage (Adobe Runtime Support issue #3113). StatCounter data shows 4-6GB devices remain the majority of active Android phones in India, Brazil, and Southeast Asia.

Comments