En el anuncio de Android Google prometió que la semana siguiente estaría disponible el SDK para desarrollar programas para esta plataforma, y así ha sido. El SDK de Android ya se puede descargar, al menos en su versión preliminar que nos permitirá empezar a probarlo y emular las aplicaciones en nuestro ordenador.

Examinando la documentación podemos ver que Android se basa en una plataforma Linux sobre la que se ejecuta una máquina virtual Java en la que correrán las aplicaciones, desde las que vengan con el móvil hasta las que podamos programar nosotros. Pero al contrario que JavaME, el que viene con la mayoría de móviles actuales, ofrece acceso a las interioridades del teléfono.

Android soporta, por defecto, tanto pantallas táctiles como interfaces convencionales basados en teclado. También conectividad 3G y Wi-Fi, aunque esta última aun no está disponible en el SDK.

Vamos a ver algunas de las APIs que se ofrecen:

* android.util. Utilidades varias, desde manipulación de fechas a XML.
* android.os. Acceso al sistema operativo, paso de mensajes, comunicación de procesos,…
* android.graphics. Permite el dibujado de gráficos en pantalla.
* android.text. Manipulación de texto, métodos de entrada, edición,…
* android.database. Acceso a bases de datos, basado en SQLlite.
* android.content. Acceso a datos del terminal.
* android.view. Interfaz de usuario.
* android.widget. Elementos que podemos usar en el interfaz de usuario (menús, pestañas, listas,…).
* android.app. El modelo general de la aplicación.
* android.provider. Acceso a contactos, calendario,…
* android.telephony. Gestión de llamadas y del estado del teléfono.
* android.webkit. Integración del navegador con la aplicación.

Entre las APIs opcionales, que son aquellas que no tienen porque estar disponibles en todos los modelos, encontramos:

* Servicios basados en la localización. Es decir, acceso a datos de localización del GPS o de otros servicios que ofrezcan esa información (por ejemplo, Galileo si algún día está disponible)
* Reproducción de ficheros, tanto de audio como de vídeo, soportando streaming.
* Gráficos en 3D con OpenGL
* Acceso a hardware como Wi-Fi o Bluetooth. De momento todavía no está disponible.

También encontramos APIs para acceder a servicios de Google:

* MapView. Permite incrustar Google Maps en nuestra aplicación.
* Envío de mensajes mediante XMPP, centrado más en comunicación de aplicaciones que en mensajería instantánea.

De momento, no he visto nada en esta plataforma que me sorprenda demasiado o que sea realmente innovador. Lo que si destacaría es la facilidad con la que se podrá programar para Android. Google ofrece, de momento, el SDK junto a un plugin para desarrollar en Eclipse y un emulador.