Android is described by Google as "the first complete, open, and free mobile platform". More specifically, it is a software stack for mobile devices that includes an operating system, middleware and key applications. The Android SDK provides the tools and APIs necessary to develop applications on the Android platform using the Java programming language.
Like the iPhone Software Development Kit (SDK), the Android SDK is being made available for free to developers to create applications.
iPhone developers who wish to make their applications available to the public must apply to the iPhone Developer Program. The $99 Standard Program is for developers who are creating free and commercial applications for iPhone and iPod touch. An $299 Enterprise Program is available for developers who are creating proprietary, in-house applications.
Android developers are encouraged to discuss the platform and their coding experiences in groups, forums, and blogs. This is in contrast to Apple's decision to require developers to agree to a ten page iPhone SDK pre-release non-disclosure agreement. In my view Apple is making it more difficult than it needs to be for developers to create great applications. It is these roadblocks that make other platforms like Android appear more developer friendly.
While Android appears to be a very solid developer friendly mobile operating system, it is to early to tell how devices running the OS will compare to the more established Windows Mobile and iPhone.
Below are a few YouTube videos from the Google I/O Conference held this last week. These videos remind me how excited I am for the iPhone 2.0 software update coming in late June.
The Android OS method of unlocking a device is a mixture of the swipe and passcode used on the iPhone. The Android unlock can be performed with a single touch to the screen (rather than a swipe and 4 digit code). It is however more difficult to share an unlock pattern with another individual than it is a 4 digit code.
The video also highlights the status bar interface. The Android status bar is a major enhancement over the rather generic functionality provided on the iPhone.
Next the presenter covers the ability to have multiple home screens. iPhone users will be very familiar with the gesture used to change pages. The second page shows an interface that allows wigits and shortcuts. This interface will allow for some messy screens.
Last, we see the web browser that is based on WebKit (just like Safari).
The visitor feedback I have received shows maps as one of the top four most used features on mobile phones (Phone, SMS, and web browser being the other three). It is not very surprising to see more powerful Google maps functionality on the Android platform. This is one area where Apple needs to focus their development efforts. One interesting feature that has yet to be added to the iPhone is the Google Maps Street View.
The Android developers are considering ways to distribute applications to devices running on the platform. The Android team will learn a lot from the Apple AppStore. It will be interesting to see how much Google subtracts from application sales to make up for hosting and credit card fees.