Android 4.4 KitKat: What's New
Google released its latest version of Android on October 31, 2013. The new release, version 4.4, is nicknamed KitKat. The release came as a surprise to many as Key Lime Pie and 5.0 had been linked to this update for quite some time. KitKat, however, doesn't disappoint as it's packed with features and updates. In this article, I'll give you an overview overview of what's new in KitKat.
Before discussing the visual changes introduced in KitKat, it is good to know that not all visual changes are present on every KitKat-compatible device. The Nexus 5, Google's flagship smartphone that was introduced alongside KitKat, includes all the visual changes discussed below. The experience on other devices, however, can vary.
At first glance, KitKat doesn't look particularly different from Jelly Bean. However, a lot has changed to simplify the user interface and focus on content.
- The blue color used in the system bar and menus has been replaced with a milky white.
- The Wallpaper application is present in the application launcher.
- Some of the application icons have adopted a monochromatic look.
- Widgets can be accessed by long pressing the home screen.
- The lock screen can now display album and film art.
- Home screens are infinite in size.
The most significant change and the one that received little attention is how the home screen has been moved to the Google Search application. There's a great article on Ars Technica that goes into more detail on this change.
KitKat made some changes to the application line-up.
The phone application has had significant work done to it. The dialer is essentially the same, but the main screen now shows and organizes your contacts based on the people you talk to the most. It also integrates search features allowing you to search for contacts, local businesses, and places. Caller identification has also been improved. The operating system will try and identify unknown numbers by searching local businesses.
Hangouts has added support for text messages to its already rich feature set.
Play Books has been changed to showcase the new immersive mode.
Emoji characters are now available from the Google keyboard.
Quick Office received a redesign and is now integrated with Google Drive. If Quick Office and Google Drive are both present on the device, Google Docs, Slides, and Sheets will open in Google Drive from Quick Office.
Google Now has added its OK Google feature. It's currently only available to certain devices, but this will change as time goes on. The feature itself let's you start a search or perform a command by saying OK Google followed by a query or command. Your device doesn't to be on the home screen or in Google Now for this to work.
The popular email platform also received a number of updates, including a vacation responder and attachment support for many file types.
Device Manager was showcased at Google I/O 2013 as part of the ambitious overhaul of Play Services. It is Google's answer to theft and other security concerns. Device Manager is built into Android 4.4 and it is by default configured to locate and wipe the device.
The Downloads application has improved as well. It has the ability to sort and display downloads in a grid.
Under the hood
Project Svelte was the internal code name for KitKat. Its goals were to reduce the size of the operating system and to improve the operating system's performance on low-end devices. The result is that KitKat can run on devices with only 512MB of RAM and everything has been geared towards memory optimization, including a new API to aid in making applications more memory efficient.
Memory Management Tools
To help developers optimize their applications, Google released new tools for monitoring an application's memory usage. Procstats is one of those tools. It analyses the memory resources that an application uses as well as the memory being used by other applications and services on the system. The tool can be used via ADB like so,
adb shell dumpsys procstats.
Another addition is the on-device memory status and profiling. It can be accessed from Settings > Developer options > Process stats.
KitKat introduces a native printing framework. It exposes a print manager that connects applications that require printing and available print services. The print manager exposes a shared service and a system user interface. The result is a consistent user interface for printing documents as well as security since the content is passed between services.
Vendors can also use the new APIs to create their own print services and third-party developers can use the APIs to add printing functionality to their own applications with a few lines of code. For more information, take a look at this DevBytes video.
Storage Access Framework
Android 4.4 also introduced a brand new storage access framework. The goal is twofold, (1) allow users to browse files, images, and videos across the available storage provides and (2) present this in a consistent user interface. The accompanying API gives applications the ability to publish their services to other applications that participate in the framework. Client applications that want to leverage the storage access framework can integrate with it using the
Full Screen Immersive Mode
This addition allows an application to take up every pixel on the screen while hiding the system user interface and the status bar at the top. Read more about this new feature at DevBytes.
KitKat introduces a screen recording utility that can be used via ADB like so,
adb shell screenrecord. The utility records at a resolution as close to the device's screen resolution as possible.
KitKat introduces HCE or Host Card Emulation, which allows any application to emulate an NFC (Near Field Communication) smart card. An NFC controller must be present in the device.
If you have an application that makes use of both SMS and MMS, you can make use of the shared SMS provider and the new APIs to manage your application's message storage and retrieval.
Enhanced Notification Access
In KitKat, The notification listener service can see more information about incoming notifications. The listener service can access extra information, including text, icon, picture, progress, and chronometer.
Because audio tunneling requires a DSP or digital signal processor, not every device will support this feature. The idea is to offload audio-related tasks to a digital signal processor instead of the CPU. The result is that audio tunneling to DSP increases battery life dramatically.
KitKat introduces support for built-in IR blasters with an accompanying API. The API allows the application to check whether the device has an IR emitter, query its frequency, and send signals.
Force RTL Layout
Testing RTL (Right to Left) issue, has always been cumbersome. To improve this, KitKat has an option to enforce the layout into RTL without the need to display your application in an RTL language. You can find the setting in Settings > Developer Options > Force RTL layout direction.
- Improvements to HTTP Live Streaming
- Common Encryption for DASH
- Audio Monitoring
- Loudness Enhancer
- Audio Timestamps for Improved AV Sync
- Performance Improvements to the RenderScript Runtime
- GLES2.0 SurfaceFlinger
- New Hardware Composer support for Virtual Displays
- New Bluetooth Profiles
- Wi-Fi TDLS Support
- Chromecast Support
- Enhanced Accessibility APIs
- Resolution Switching Through Adaptive Playback
- Translucent System UI Styling
- Drawable Mirroring for RTL Locales
- Improved Cryptographic Algorithms
API 19 added six new packages (see below).
Another 49 packages were updated. You can find the complete changelog at the Android Developers website.
Even though KitKat is a point release, it has significantly improved Android with a number of great features. Some of the new features are currently only supported by the Nexus 5 as they are hardware-related, but this will change over time as new handsets are released with support for KitKat. As of December 2, 2013, KitKat made up 1.1% of Android distributions with over 50% being taken up by Jelly Bean.
The key question with regards to the next Android release is the version number. Will it be Android 4.5 or 5.0. If Google maintains its naming scheme, the next release will start with the letter L. Will it be Lemonade? Who knows.