Flashback: Android 4.4 KitKat has optimized the operating system for phones with only 512 MB of RAM
Remember when Google named Android versions after desserts? He even put statues of said desserts in front of his desk – things were fun back then, and more importantly, every new release had major improvements.
Some were major milestones, like Android 2.3 Gingerbread, the version that was so good it refused to die. Android 4.4 KitKat also introduced numerous updates, which are surprisingly relevant to this day, eight years after its release in 2013.
Name First: This was the first release to be named after a branded snack, all others are generic desserts. This would follow suit with the name “Key Lime Pie”, but a last minute deal with Nestle gave us the name we know today. Despite this setback, cakes will finally be recognized for their importance at the table with v9.0.
KitKat came after three Jelly Bean releases, one release focused on providing a smooth user interface. In addition to some UI tweaks, KitKat has focused on improving performance on resource-constrained devices.
That was the goal of Project Svelte, which aimed to run Android with as little as 340MB of RAM, although 512MB was more realistic. Looking at some stats, the average phone in 2013 had 1GB of RAM, with 3GB being the most you could buy. That means there were quite a few devices with less than 1GB of RAM back then and such devices still exist (well, they’re smartwatches, but the point remains).
Google developers have created many tools to reduce RAM usage by the operating system and applications. One such tool was zRAM, a compressed segment of RAM where unused data could be temporarily stored to free up space. This is different from the virtual RAM feature you see in today’s phones, which takes advantage of fast internal storage to pull data out of RAM. Of course, back in 2013 relatively slow eMMC was the norm, especially on low-end devices, so such a scheme would not have worked as well as zRAM.
Another important change was the preparation to replace the Dalvik VM with the Android Runtime (ART). The Dalvik virtual machine was crucial in the early days of Android because it allowed software to be independent of hardware: ARM, x86, and even the rare MIPS processors were supported. Android 2.2 Froyo introduced Just-in-Time (JIT) compilation to speed up application performance, but after several years, Dalvik began to show its age.
ART uses Ahead-of-Time compilation, essentially compiling the app to the phone’s CPU machine code as part of the app installation process. KitKat was still using Dalvik by default, it wasn’t until Lollipop that Android completed the switch to ART. But ART is still used today and v4.4 laid the groundwork for that.
We may have underestimated how much KitKat changed the Android UI, as one minor change made a big impact: version 4.4 allowed users to choose a default launcher from the Settings screen. This was possible in previous versions, but was tedious. Now anyone could easily try different launchers if they were not satisfied with what the manufacturer skin had to offer.
Some other UI tweaks included adopting a translucent look for certain UI components such as the status bar and navigation bar. Immersive mode allowed apps to run full screen, completely hiding those two bars, along with other OS interface elements. A new transitions framework has enabled developers to create cool, smooth animations for their apps.
KitKat made navigation and status bars translucent • Immersive full screen mode
KitKat added native support for the IR blaster, before manufacturers used custom solutions, which were harder for app developers to support. In addition, the NFC functionality supports host card emulation, allowing the phone to act as a smart card, used for mobile payments, loyalty cards, transit passes, etc.
Other new features include wireless printing (via Wi-Fi or online services like Google Cloud Print), the ability to certify phones as Miracast-enabled, improvements to connections with Bluetooth devices, and more.
KitKat made phones more secure by switching SELinux (Security-Enhanced Linux) to “application” mode, which prevented compromised apps from accessing parts of the system they weren’t supposed to touch. v4.4 also changed the way apps access the memory card and made it easier to browse local and cloud-stored files.
Files stored in the cloud can now be browsed like those stored locally
Many other small improvements have come with KitKat. For example, it changed the way sensor data is tracked to reduce power consumption. This also allowed for the creation of the step counter feature, which was built into the operating system instead of letting apps implement a power-hungry solution.
Runtastic moves and pedometer using the new step counter feature
KitKat’s goal was to reach 1 million users. About a year after its release, KitKat v4.4 was already running on a third of Android devices, and it wasn’t until mid-2015 that KitKat caught up with Jelly Bean. It never reached 50% adoption because Lollipop had already launched and was taking market share. By the end of 2015, Android was running on 1.4 billion devices in total, so KitKat could never run on a billion devices.
But the legacy of Android 4.4 KitKat isn’t about how many phones it ran in its heyday. The RAM optimizations that made the OS compatible with lower-end devices, the performance and security improvements, and the new connectivity features it introduced are still relevant even in version 12.
- Click to share on Twitter (Opens in a new window)
- Click to share on Facebook (Opens in a new window)
- Click to share on LinkedIn (Opens in a new window)
- Click to share on WhatsApp (Opens in a new window)