Search (Google -CodeProject -Youtube ) one click

Google
 

Sunday, December 16, 2007

First, the Google phone , Android..


By now, everyone knows that there is really no Google phone but an open source phone platform. I am not sure how to make of it. Android is certainly not the first attempt of its kind. The SavaJe Technology (acquired by Sun) and Sun JavaFx Mobile are some of the examples of Java phone platforms. They did not quite take off for varieties of reasons. Would Google phone follow the same fate? Only time will tell.
Google does provide access to the kernel source code which is based upon Linux, and is built for Qualcomm chipset. So you could imagine that the Google engineers will be using these devices to test the platform. You could see the phone from the video below from Google Android web site. The prototype phone is eerily similar to the screenshot from emulator. Somehow I have a hunch that someone will port this kernel and the Android platform to existing real phones soon. There are already some discussions going on for Dell Axim X50v, HTC Kaiser (also known as AT&T Tilt), and HTC Universal (also known as T-Mobile MDA-IV, etc).


Android platform
The core of Android runs Linux. Underlying C/C++ library is not well documented, and not supported. This is very similar to Apple iPhone. There have been some programmers hacking away, running console C/C++ applications on it. For now, without GUI, it is quite useless. But it could be a starting point to dig up the underlying file systems, etc. Google did mention in the document that Bluetooth and WiFi native APIs will be available, but not now. Hmmm, why am I not surprised?
The Android platform is based on Java. In other words, if an application is not based on Java, it cannot be called Android application, even though it runs on Android-based phones.
Major components in Android platform are shown in the following architecture diagram, taken from Google Android SDK doc.
CLICK TO ENLARGE



One unique thing about Android is that every application has its own Java Virtual Machine (JVM) - Dalvik. The resource consumption for this JVM is not clear and no benchmark information is available. Intuitively it might be problematic but then again Google has proven the intuition wrong a few times. It would be interesting to see the rationales behind this decision.
Key functionalities seem complete from the online resource and SDK document. Most of the networking functionalities will be supported in the final releases, including GSM, Bluetooth, EDGE, 3G, and WiFi. GPS will also be included. But they are not included in this version of Android SDK.

User experience
Phone is so much different from PC. I am not sure phone platform alone can define the user experience. Aesthetics, materials, design, touch, hold, feel and operations are all parts of overall experience that are so crucial to the success of the phone, thus the underlying phone platform. Google certainly has a good start and let's hope Google succeeds in transforming the phone and phone platform landscape.

Android applications
I have been playing with Google Phone Android SDK since it was released. Please note that this is just some first impression, particularly when this SDK is not yet a final release. This article explores the Google Phone platform Android from developer's perspective, partly because I am from programming background and want to focus on development side of things, partly because, well, there is no phone :)
Here are some screenshots from the emulator in SDK. You could download the emulator and give it a try. It is free. After you unzip the SDK, just run Emulator.exe in tools folder. As you can see, the applications available in the SDK emulator are fairly limited so far. Note that Note Pad is a sample I built and deployed from the SDK via Eclipse and the Android plugin.



Overall impression
On the positive sides, Google Android is a drastically different approach from Apple's closed platform policy. I am sure it will be welcomed by all developers. Without a real phone to touch, to hold and to sell, there is not much at stake for Google like Apple does. Apple's one million iPhones in three months is in a league all by itself. Maybe Google is just testing the water. Let's hope that one million Android downloads in three months (wild guess?) translates into something bigger than Apple's stellar record.
However, quite frankly, I am a bit disappointed at the moment (I definitely hope as time goes by the perception will change). Not at the Android phone platform (whether it is complete or polished enough), but at the non-revolutionary aspect of this platform. Granted, I might have high hope after much hyped rumors of Google Phone given track records of Google's innovations that we all grow accustomed to. Perhaps it also has something to do with iPhone's setting such a high standard in terms of innovation. Android platform is evolutionary in nature. I am certainly hoping to see more revolutionary elements going forward. Because of its openness, hardware vendors could also bring on their innovation to the platform. How well the model will work remains to be seen.

No comments: