« Back to the top page
IDG News Service
Like the story? Get Alerts of big news events. Enter your email address

e-mail as well, the safety and privacy of optional image display is extended to the mail client, an option that iPhone lacks. The e-mail clients, one each for Gmail and generic POP/IMAP mail, are exceedingly well done. Gmail, Google Talk IM (which integrates with other IM servers and protocols), and over-the-air sync of contacts and calendar utilize Google's free services. On your first use of the device, you create a Google account or configure an existing one. Did I mention that it's free?

Application development

This may not be the best venue for launching into a detailed run-through of Android software development. Suffice it to say that even though the tools are a bit of a pain to install, they work well and easily for Java applications. Android uses a special Java virtual machine called Dalvik, but this detail is hidden by the tools.

Where Android's Java APIs are concerned, even the more esoteric APIs unique to the device, Google's documentation is detailed and well cross-referenced. The Eclipse-based integrated development environment includes command line tools, leveraged by the IDE, native to the PC used for development. The toolset is available for Windows, OS X, and Linux, and installs alongside a standard Eclipse distribution.

[ Formore on Android development, see " SDK shoot-out: Android vs. iPhone" and " Test Center preview: Inside Google's mobile future." ]

Tethered debugging of code operating on physical T-Mobile G1 handsets is standard, rather than a paid option as is the case with iPhone and Symbian platforms. The debugger, loader, and file explorer use a USB interface presented to the host as a TCP/IP link. T-Mobile G1 presents as a USB Storage Profile device as well, but in this mode only music and pictures are visible. Through the debugger, the entire file system with the exception of protected user data can be read and altered.

Java is the de facto path to custom Android software. It provides garbage collection and true app isolation, and supports multi-threaded and server (background) applications. Android uses a broadcast/listen model in which running instances of Java classes are called Activities and are controlled by user or application-generated messages. Remote procedure calls (RPC) with marshaled data provide interprocess communication.

Each Android app is protected by running in a separate Linux user ID assigned when the application is installed. Self-issued certificates can be used to sign code, or the user can opt to install unsigned applications. A unique and innovative feature of Android lists privileged actions, like use of the network or access to the contacts database, at installation time, setting up a sort of informed consent that bypasses disruptive, "Mother, may I?" prompts at run-time.

I have written, debugged, and installed Java software for T-Mobile G1, and I can attest that once the tools are installed, it is remarkably easy. I have not attempted native code development, for which Google does not supply tools. However, native app necessities like the C standard library and other linkable libraries are present.

Unlike iPhone, the Android SDK is not bound by non-disclosure, an idiotic restriction that Apple needs to abandon. And unlike any other platform, Android uses published source code. The NDA on the iPhone SDK precludes me from comparing it to Android, which is a pity and Apple's loss. At present, sources for Android's Linux kernel are freely downloadable. Google has committed to releasing the source code for "most of Android" in the near future. This is a little vague, but it's good to know that Google's heart is in the right place.

In summary

Lacking features like VPN and Exchange Server connectivity, T-Mobile G1 does not pass muster as an enterprise device, but that's a limitation that I expect will be overcome by Google and open source developers much sooner than the year it took Apple to turn iPhone into the enterprise-friendly iPhone 2.0.

T-Mobile G1's run of the mill build quality is offset by a 12-month parts and


Post new comment

The content of this field is kept private and will not be shown publicly.
Respectful debate is welcome, but comments that are defamatory, indecent, abusive, or in violation of any law will be removed.