With API services outside of the core operating system, Google is taking back control of Android
We didn't get a new version of Android this year at Google I/O. You can read all the lamenting and gnashing of teeth over this across the web, so I'll spare you the play by play of how it was supposed to happen (a proverbial lock), but didn't.
Instead, I'll tell you a little bit about what we did get -- a huge updated version of Google's service APIs, which turns out is much better.
Wait. Better? How can an app I never wanted that got magically pushed to my phone be better than a newer, higher number in my about phone screen? That's crazy talk, right?.
Turns out, that little app is a powerful beast. Read on.
What are Google Play Services?
Sitting through the session at Google I/O gets us the answer straight from the folks who write the software -- and they sum it up nicely. Google Play Services is "a single place that brings in all of Google's APIs on Android 2.2 and above." An API (Application Programming Interface) is a fancy term for special code that's written as a way for one piece of software to communicate with another. Google writes APIs for Android, and app developers use them as a conduit to access many of Android's core features. You'll find APIs in plenty of software projects, both big and little. Having them isn't really anything special.
Currently Google Play Services is at version 5. You probably had no idea things were updating on your phone or tablet all this time, because that's the way it was intended. You don't go looking for the file, it comes and finds you. Every device running Android 2.2 or higher that has official access to Google Play uses these services. That means almost every single one of those 900 million devices that have been activated has a copy of Google Play Services installed. And Google keeps things updated, and pushes these updates out fast, which is part of what makes them so fantastic.
Being under complete and total control from Google means that the folks who built your phone, as well as the carrier you may have bought it from, are completely out of the picture. You won't have to wait six months or more to get the new service APIs. In fact, Google says they are able to get them pushed to the majority of devices in about a week after they are updated. If you take one thing away from all this, knowing that Google decides what the service APIs are, who gets them, and when is the important part.
What do these services do?
The meat of the issue. If you watched the Keynote, where Google announced all these ultra-cool and new features for Android (yes, without any version update!) -- features like the new fused location service, the Play Games services, new and improved Google Cloud Messaging or even the new panorama API -- you've seen some of the things that Google Play Services handles. The app installed on your phone allows developers to install some libraries from the SDK, and tap into all this stuff with just a few lines of code. No matter if you're running Ice Cream Sandwich, or Jelly Bean or any version above 2.2, you'll have access to them.
Google not only has pulled these services and their respective APIs out of the OS, it has made it easy for application developers to use them. The past few days here at Google I/O we've seen just how easy it can be to add these features to an app, because Google is doing all the heavy lifting. Developers only need to reference the particular thing they need from the Google Play Services application in their code, and the magic happens when you run it on your phone.
Remember from above we talked about the fantastic part where Google controls these services, and their distribution out to all of our devices? I want you to keep remembering that as you read through. Think how different things would be if you had to depend on your carrier or the people who made your phone to get all this out to you. Yeah, that would suck. This is why such a big update to Google Play Services is more important than a new version of Android -- we got all the cool stuff without waiting for HTC or Samsung, or even worse -- AT&T or Verizon -- to send it to us.
Why it matters to us
For a minute, forget all the complaining about how Hangouts weren't instantly available for everyone at the same time. Most everyone should be good to go by now and have their new Hangouts app. Everyone. Think about that -- Google Talk, a long staple and core feature of the operating system, was updated with a slew of new features without you getting a system-wide update.
Last week, before we came to San Francisco, we were afraid. We were worried that Hangouts would get shown off, and then we would find out that they were part of Android 4.3. This means that most people would be waiting a long, long time for them, and you all would be ready to boil over knowing that your new HTC One or Galaxy S4 wasn't going to get the feature any time soon. And rightfully so, smart phones are expensive.
Instead, 15 minutes after Hangouts was shown off, people were finding it in the Play Store. The same thing will happen when a developer uses the panorama API to build a photosphere viewing app, or someone writes all the new Games functionality into your favorite game. This is much better than a new version you weren't going to get for six months, isn't it?