Google has made the Android SDK publicly available. A few first impressions:

  • Android development is Java based and is similar to the method used to develop for the Sidekick: Compiled Java classes are run through a tool that translates them to a custom VM (Android’s Davlik VM in this case).
  • IDE integration is available via an eclipse plugin.
  • A good portion of the base Java libraries are included. I’m especially happy to see the excellent java.util.concurrent API is standard. The Apache Commons library is standard as well, which is nice to see.
  • There is rich media support available (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF). With Apple, Adobe, and Google all building on H.264VC-1 is becoming less and less attractive.
  • I’ve suspected that Android would include the Java 2D API, since it’s been rumored to be based on the Skia engine that Google purchased. While the engine may be based on Skia, the API is definitely not Java 2D. The 2D library is called SGL, and is documented in the android.graphics package.
  • OpenGL ES is standard, but hardware 3D acceleration is not.
  • Like Adobe’s AIRSQL Lite is included for structured data storage.
  • Android’s web browser is based on the Webkit engine used in Apple’s Safari browser.