Live from Google I/O: deep inside Google Android
I’m live here at Google I/O at the first Google Android session. So far we’re going fairly tecccie into the software guts of Android, which I appreciate some of you may not be that interested in, but we’ve been promised the latest news on Android at the end of the session – watch for a separate post on that in about 40 minutes’ time or so.
In the meantime, for those of you interested in Android under the hood, there’s loads more info after the jump.
Google Android is a complete software stack. You get a whole bunch of libraries, including dedicated graphics libraries that Google wrote, other graphics libraries such as OpenGL, a database (SQLite), browser (WebKit) and media framework. You also get a whole series of application modules, including Google’s GTalk instant Messenger app. It’s all based on the Linux kernel, and includes all the drivers you need t access any handset’s core physical features.
Google specifies four separate building blocks for Android apps: Activity (UI components or screens), IntentReceivers (set and respiond to notification or status changes – use to wake up your app), Service (just runs in the background) and ContentProvider, which enables apps to share their data. The classic example is a contact manager or phone book, which can share numbers between apps. This final component is rather novel, as it’s rare that apps in a standard mobile phone share their data.
There’s absolutely no licensing restrictions with Android. Unlike the iPhone, simply create an app and release it. You don’t need certification from Google, you can simply build and ship. This should give Android a huge competitive advantage over the iPhone, as every iPhone app has to be licensed and approved by Apple. Innovation should be orders of magnitude faster on Android than it will be on iPhone.