The Source for Java Technology Collaboration
User: Password:



Simon Morris's Blog

Community: Mobile & Embedded Archives


Your Plastic Pal Who's Fun to be With

Posted by javakiddy on December 10, 2007 at 04:40 PM | Permalink | Comments (5)

Google's Android caused a minor stir when it launched a few weeks back — Java in flavour, but without a full compliment of recognised APIs to make it a bona fide Micro or Standard Edition. Reaction was predictably mixed, some saw Google's roll-your-own approach as a harmful splintering of the Java brand, others saw it as inevitable.

Android is Google's venture into the mobile device space, an Open Source platform using its own abstraction layer, the Dalvik Virtual Machine, sitting atop a Linux foundation. Applications are broken up into pages called activities, written in Java, compiled to bytecode and translated into a single APK (Android package) ready for the DVM.

From a UI point of view moving from activity to activity is a little like browsing the web, with the current 'page' dominating the display. The Android OS has a simple but effective mechanism for snapshoting and restoring activity states. A mail client can honour a web link by firing up a browser, the browser can follow a link into an IM client, the IM client may invoke a mapping application, with little consideration for memory constraints. The user can then backtrack down this 'trail of invocation', with each activity revived in its prior state. Forming applications with connected components like this is actively encouraged in Android, indeed some of the Google promotional material even goes as far as to describe apps as mash ups.

It's worth noting, not all activities need to be user-facing. Android allows activities to run silently in the background as services, or trigger on specific OS events.

Controversially, while Android includes many of the most familiar java.* packages, it compliments them with its own android.* hierarchy for working with the mobile device itself. This includes 2D and 3D graphics, telephony and network communications. The latter is particularly important as Android looks forward to a time when the mobile market will be supported by ubiquitous always-on internet connections. To that end functionality like XMPP (eXtensible Messaging and Presence Protocol), media playback and Google Maps are well supported.

So that, in a nutshell, is Google Android — but what is it like to develop for? I suppose the only way to find out is to write a simple application...

Continue Reading...





Powered by
Movable Type 3.01D
 Feed java.net RSS Feeds