TR – Android 4.4 KitKat’s Project Svelte: what it is and why you should care
Written for TrustedReviews, find the original article here
Earlier this week Google revealed the driving force behind the Android 4.4 Kitkat release and its name is ‘Project Svelte’. We take a look at what this curiously named initiative is, how it was developed and whether – as some are claiming – it could lead to the end of fragmentation on Android.
What is Project Svelte?
The key is in the name. Svelte is Google’s attempt to cut the fat from Android allowing it to run faster and more smoothly on lower range handsets. It comes after Google’s admission that initiatives like ‘Project Butter’ (introduced in Android 4.1) made the operating system a silky user experience, but at the expense of upping the hardware requirements significantly.
“The first thing that I was working on was Project Butter to make the system smoother,” explained Google Head of Engineering Dave Burke in an interview with ReadWrite. “The thing is, butter puts on weight. So then I did Project Svelte to lose weight. So now my contribution to Android is basically zero.”
It is a good joke, but Svelte addresses a serious problem for Google. Android 3.0 was purely for tablets, so entry-level Android handsets incapable of running Android 4.x were being forced to install the aged Android 2.3 operating system to maintain a reasonably responsive user experience. The three-year old platform did a job, but it also locked owners of these phones out of newer features and an increasing number of apps that require Android 4.0 and above.
How was Project Svelte made?
Google is famous for ‘dogfooding’ – that is making its employees use and live with their own projects. It was no different with Project Svelte. Everyone on the team was given a crippled Nexus 4 where the addressable RAM was cut in half to 512MB and the resolution hacked from an HD friendly 1280 x 768 pixels to 960 x 540 pixels. Two of the Nexus 4’s four processing cores were also switched off and the clock speeds of the remaining two were lowered.
“Literally a bunch of us just used that as our default phone. It was painful, and it was broken to start with,” said Burke who listed the four key targets his team set out to achieve:
- Reduce the footprint of the system.
- Reduce the footprint (memory usage) of the apps that run on a Google Experience (Nexus) device.
- Fix how apps react and crash during bad memory situations.
- Provide better measurement and instrumentation of how apps are running in Android so developers can see how memory-conscious their apps are.
The Project Svelte team got there by stripping Google apps from the OS (even including the Google Play store), which drastically reduced their memory usage. This also allowed KitKit to be even more customisable as previously locked functionality like SMS messaging could now be swapped like any other app for a third-party alternative.
Svelte also placed a strong emphasis on cutting RAM usage in third-party apps by giving developers access to ‘ProcStats’ – a tool that monitors app memory usage. Android also now tracks app memory usage and will shut down an app if it is using too much memory for too long so the incentive to make more efficient apps is strong.
How Project Svelte can end Android fragmentation
With all these benefits the notion has spread that Project Svelte is Google’s silver bullet to fix Android fragmentation and on the face of it there are compelling arguments to back this up:
- The vast majority of Android phones can now run the latest OS
- Manufacturers know a budget Android phone with the latest Android OS is a compelling sales proposition
- Customers will vote with their wallets which should see Android 4.4 budget phones very soon
But there is a better, (still) less publicised reason to be optimistic as well, which was undoubtedly the driving force behind Project Svelte in the first place: Google Play Services. Getting the latest version of Android onto budget mobile devices gets the latest version of Google Play Services onto them as well.
What is Google Play Services? Our detailed analysis will tell you more, but in a nutshell it is a background service with near limitless levels of access to modify your phone. It already has permission to do the list of things (spread over two screens!) pictured below and, quite remarkably, it can even give itself new permissions at any time.
ANALYSIS: Why Google Play Services is more important than the Nexus 5
Privacy conspiracists heads may explode, but the point is Google Play Services on Android 4.x devices is the tool that can update virtually every part of the platform. It keeps 99 per cent of functionality bang up-to-date even if the Android version number changes in future. This sounds pretty good to us.
How Project Svelte cannot end Android fragmentation
And yet there are some significant buts:
- Manufacturer’s third-party skins
- Battery life
- Yes, Android version numbers
The first of these is something that has plagued Android since day one: the largely inefficient graphical overlays handset makers put on top of Android to differentiate their handsets. Given Motorola recently claimed its predominantly stock Android £135 Moto G (right) could perform basic tasks in Android 4.3 faster than Samsung’s TouchWiz inflicted £500 Galaxy S4, it gives you an insight into how troublesome these skins can be. In a stroke skins could wipe out much of the efficiencies gained in Android 4.4. Worst still it could give manufacturers the leeway to may even lazier skins.
Next comes battery life because, for all its advances, surprisingly Android 4.4 doesn’t appear to have improved it a great deal. A key criticism of Android 4.4 hero device the Nexus 5 is its inconsistent battery life and Nexus 4 owners haven’t reported any significant gains from the 4.4 upgrade with better jumps actually coming from the previous upgrade from Android 4.2 to 4.3.
Crucially battery capacity remains a significant manufacturing cost, which is why the Nexus 5 saw a big capacity cut compared to the LG G2 that inspired it and budget handsets – while running less power-hungry components – always come with much smaller batteries. Android 2.3, conversely, is frugal and when making budget handsets cutting corners wherever possible is crucial.
Lastly we have Android version numbers because while Google Play Services can update most things on your phone, it cannot trigger automatic upgrades from Android 4.4 to 4.5, 5.0 or wherever the OS is headed next. Many users may not care about being on the latest version of Android, but many do and until Google works out how to fix the most literal aspect of Android fragmentation Apple will have a stick to beat it with.
Furthermore, Google needs to set a better example to manufacturers. It excluded the two-year old Galaxy Nexus from the Android 4.4 update, even though the point of KitKat is it runs better on older and budget phones. Apple meanwhile only excluded its five generations old iPhone 3GS from iOS 7 this year. If Google doesn’t convey the message it actively cares to fix fragmentation on its own branded handsets, what hope has it of convincing others?
Why you should care about Project Svelte
Despite these concerns there is no doubt Google got its priorities right in putting together the Project Svelte team. Android has long offered the greatest functionality and customisability of the main mobile OSes and, having smoothed its rough edges with Project Butter, making it run more efficiency on less powerful devices was the major issue.
Project Svelte may not be the silver bullet to Android fragmentation many would like it to be, but it makes the platform faster, more cohesive and more widely available than any previous version. That’s a pretty big step.
Copyright for all reviews, editorials and features on this site belong to their respective publishers. All samples published on this website are via prior agreement with those publishers and serve to act as a portfolio and centralised location for all my work. Contact me at firstname.lastname@example.org should you wish to commission me or supply review samples, press releases or arrange meetings.