Android SDK 1.0 Release

September 23, 2008 at 8:05 PM · 1 comment

in Java,Software

The Setup

Last year, there was a lot of what-if talks about bringing together interested parties to compete against the might of Apple’s [AAPL] iPhone product. There were a lot of nay-sayers and people who were pooh-poohing the notion that, given Apple’s head-start, there would be no way for anybody to catch up.

Last November, Google [GOOG] quietly (almost…) released an open beta of the Android SDK and some sparse notes about how it could be used. The press pounded on it, saying how disappointing it was that only software was being made available, without any phone implementation. And, of course, the Java-haters also chimed in at that point, about how Java-like the Android SDK is.

The Premise

Of course, I’d chimed in about some of the developer expectations from the Android SDK. Over at the ‘Alley Insider (yep, it’s SAI), I’d commented (not once, but twice!) on Dan’s 6/24/2008 post about the feasibility of the Android SDK, and how it differs from the iPhone SDK. First, I commented about what the Android SDK really represents:

Dan, 

Couldn't resist given all of the latest buzz
here about what Android is supposed to be... 
Since Android is simply a software stack upon
which anybody could create a bunch of apps,
the Android SDK allows you to leverage the
interfaces from the stack to create your
stuff. 

Google's Android description is a nice way
of showing its inner workings:

http://code.google.com/android/what-is-android.html 

The info that isn't shown are the various
manufacturers' implementations of the
Android spec (obviously). 

But this is why a lot of folks who've been
commenting about the "Android" vs. iPhone
device have been off-the-mark. This is also
why, with a bit of tweaking, if Apple
provides the lower level hooks for the 
Android runtime and fills in the blanks
for a few of the libs and app frameworks,
then Android SDK users would be able to
ship their apps on the iPhone. 
Here's the secret ingredient: Sun has been
touting Java "the platform" for several
years now, with mixed success. Google has
gone the other way and focused on Java
"the language" to quickly ramp up on
developer mindshare for the Android SDK
(they've done the Java-to-AJAX thing
already, so they have some experience
with this). Perfectly legit, but it no
doubt irks Jon a bit. ;)  

Then I commented about how there are running stacks (regardless of whether you label them as “emulators” or “ports”) this summer already:

Oops, almost forgot: 

Because of the way the Android spec is
layered, the so-called Android phone
emulator isn't merely just an emulator... 

So if somebody "ports" or has an
"emulator" for Android on a device or
computer, what they're actually saying is:
"I've assembled a functional Android stack
on this device/computer." 

The Nokia N810 (and probably the N800 if
running the updated OS2008) has been shown
operating Android:

http://www.intomobile.com/2008/04/09/nokia-n810-can-run-android-too.html 

The HTC TyTN II also recently has
something showing Android:

http://www.intomobile.com/2008/04/12/htc-tytn-ii-can-run-android.html 

The key point here is that, with a little
imagination and willpower, Android enabled
devices could a larger category than merely
the GPhone implementations with Android on
them. In stark contrast, the Apple iPhone
SDK is used to create apps that operate on
the Apple iPhone; Apple has no publicly
known plans to create a comparable platform. 

Given the increased flexibility of the Android SDK over the iPhone SDK, the potential to target many other device types and scenarios is simply fantastic.

The Action

Now, several months later (and yes, earlier today), the Android 1.0 SDK Release 1 is announced. This is, not coincidentally, tied to the same-day announcement of the first GPhone implementation. Extremely important to developers is the fact that we now have access (or will very shortly, due to the product announcements) to a live production product to go with the simulators we’ve been using. This brings home the ever-present need to test on live product, not just made educated guesses via simulation: we’ve already seen the curiousness of recent iPhone 3G reception troubles.

So, as the enterprising enterprise/mobile Java developer that you are, go grab your own copy of the Android 1.0 SDK Release 1 if you haven’t already… toss it into your development rigs, rebuild your code and see how it’s working, plug the SDK into your build/CI rig, and roll out your product! :-)

N.B.

You may have noticed that I’ve alluded to Dan’s post over at SAI before: the Openmoko Neo FreeRunner story. Incidentally, that is another open source mobile development platform, but it just happens to not be Android-based.

{ 1 trackback }

Previous post:

Next post: