The latest versions of Android has required more and more hardware to run effectively, with most devices now needing 2 GB of RAM.
This has meant that low-end Android phones tended to come with older versions of the OS, even as far back as 2.3, to allow the OS to run at all, let alone smoothly, on low-RAM handsets.
A bit like the early mammals in the age of the dinosaurs, Windows Phone has been able to grow in a niche, that of the low-end smartphone, were it was simply better adapted than the latest versions of Google’s Android.
The only two mobile operating systems which gained market share in Q3 2013 was Android and Windows Phone, and I suspect this has not gone unnoticed by Google.
The very latest version of their OS, Android 4.4 or Kitkat, is aimed at corrected this issue, aiming for “Android for all”.
Android 4.4 is designed to run fast, smooth, and responsively on a much broader range of devices than ever before — including on millions of entry-level devices around the world that have as little as512MB RAM.
KitKat streamlines every major component to reduce memory use and introduces new APIs and tools to help you create innovative, responsive, memory-efficient applications.
OEMs building the next generation of Android devices can take advantage of targeted recommendations and options to runAndroid 4.4 efficiently, even on low-memory devices. Dalvik JIT code cache tuning, kernel samepage merging (KSM), swap to zRAM, and other optimizations help manage memory. New configuration options let OEMs tune out-of-memory levels for processes, set graphics cache sizes, control memory reclaim, and more.
In Android itself, changes across the system improve memory management and reduce memory footprint. Core system processes are trimmed to use less heap, and they now more aggressively protect system memory from apps consuming large amounts of RAM. When multiple services start at once — such as when network connectivity changes — Android now launches the services serially, in small groups, to avoid peak memory demands.
For developers, Android 4.4 helps you deliver apps that are efficient and responsive on all devices. A new API, ActivityManager.isLowRamDevice(), lets you tune your app’s behavior to match the device’s memory configuration. You can modify or disable large-memory features as needed, depending on the use-cases you want to support on entry-level devices. Learn more about optimizing your apps for low-memory devices here.
New tools give also give you powerful insight into your app’s memory use. Theprocstats tool details memory use over time, with run times and memory footprint for foreground apps and background services. An on-device view is also available as a new developer option. The meminfo tool is enhanced to make it easier to spot memory trends and issues, and it reveals additional memory overhead that hasn’t previously been visible.
See the full page at Google here.
It remains to be seen if Google will achieve its aim of warding off fragmentation and keeping the full range of their Android handsets on the same virtual page, but the threat to Windows Phone is clear – it will no longer be safe it its low-end niche, and needs to continue working on its value proposition if it wants to maintain its momentum into 2014.
Do our readers think Google can fix its low-end phone problems and suffocate Windows Phone, or will it be like Project Butter, which promised to eliminate lag in Android, but never delivered? Let us know below.