Javier Jerónimo


Entorno de desarrollo completo para Android (1): Eclipse

30 Jun 2013 » programacion

Hay una cosa que me encanta cuando estoy en un proyecto y es tener un entorno de desarrollo completo y útil. Sin desvariar, que aunque me guste tener todas las herramientas de trabajo en el mismo lugar, tiene que ser útil.

Esta semana pasada he tenido que entrar hasta las tripas de un proyecto de aplicación móvil para Android, y lo primero que he hecho ha sido montar el entorno lo mejor posible.

Mi opinión es que el tiempo que se invierte en montar un entorno de desarrollo completo, que yo más bien llamaría entorno de desarrollo decente, es un tiempo que se ahorra en el futuro, y mucho. Primero porque si otras personas tienen que entrar en el proyecto, no van a tener que dedicar mucho esfuerzo a montar el entorno. Y segundo, porque gestionar determinadas cosas de forma manual lleva a un caos antes o después: dependencias, pruebas, integraciones.

Una aplicación Android es una aplicación JAVA, así que el primer objetivo es montar un proyecto pensando en la interfaz más extendida: Eclipse.

Ya tenemos un punto de comienzo y será el que trate en este primer artículo.

Proyecto Android en Eclipse

Como nota introductoria quiero dejar claro que este artículo supone que ya tienes un entorno de desarrollo con Eclipse que usas habitualmente. Así, en el artículo reflejo cómo actualizar el entorno para añadir soporte a los procesos propios del desarrollo Android.

Sin embargo, si lo que quieres es montar un entorno completo desde el principio, existe una distribución de Google para esto mismo, que ya incluye una versión de Eclipse con los plugins instalados: http://developer.android.com/sdk/index.html

No obstante, este artículo quiero que sirva de justificación sobre la necesidad de un entorno de desarrollo completo orientado a Android, y la verdad, tener una instalación de Eclipse con absolutamente todos los plugins del universo instalados, acaba siendo un problema a la larga.

Android Development Tools en Eclipse

La instalación de los plugins de Android para Eclipse es sencilla y se pueden usar varias alternativas. Para mí, Eclipse Marketplace siempre es la primera opción:

Plugin ADT para Eclipse<figcaption class="wp-caption-text">Plugin ADT para Eclipse</figcaption></figure>

Aunque si no sale realizando una búsqueda, siempre se puede instalar desde la otra interfaz, añadiendo un nuevo “update site“: https://dl-ssl.google.com/android/eclipse/

Y la documentación de Google, que mejora por momentos:

Algo que no conocía hasta este momento, cuando he redactado este artículo y he buscado las direcciones de referencia, es otro plugin para gestionar traducciones en las aplicaciones. Como siempre, añadiendo un nuevo “update site” a Eclipse: https://dl.google.com/alt/

SDK de Android

El plugin de Android se apoya en el SDK que Google distribuye y que contiene las bibliotecas, las herramientas de gestión, etc, así que es fundamental tenerlo instalado.

http://developer.android.com/sdk/installing/index.html

Después de instalarlo y configurarlo en las opciones de Eclipse no queda más que empezar a usarlo:

Configuración SDK Android en plugin Eclipse<figcaption class="wp-caption-text">Configuración SDK Android en plugin Eclipse</figcaption></figure>

¿Y esto para qué?

El objetivo que tengo es claro, disponer en mi entorno de desarrollo, y sin salir de él, es decir, disponer en la aplicación en la que pasaré la mayor parte de las horas durante el proyecto, de las herramientas de gestión de Android:

  • Plataformas y versiones del API instaladas.
  • Emuladores.
  • Herramientas de depuración.

Y del azúcar que viene de regalo con el plugin:

  • Plantillas para proyectos y nuevos ficheros: actividades, fragmentos, recursos…
  • Funcionalidad de “completar código”, “ir a definición” para los recursos de Android, etc.
  • Perspectivas y vistas propias de Android que completan las ya existentes en Eclipse.

Por ejemplo, disponer de un botón en la propia interfaz de Eclipse para la gestión de los distintos SDKs instalados (Android SDK Manager):

Android SDK Manager desde Eclipse<figcaption class="wp-caption-text">Android SDK Manager desde Eclipse</figcaption></figure>

Disponer de los asistentes de nuevos proyectos Android (en la siguiente captura también salen proyectos GAE porque tengo otros plugins de Google instalados):

Asistentes Eclipse proporcionados por plugin ADT<figcaption class="wp-caption-text">Asistentes Eclipse proporcionados por plugin ADT</figcaption></figure>

Y para terminar la gestión de los emuladores que se ejecutan en el ordenador de desarrollo, por una parte teniendo la posibilidad de lanzarlos desde Eclipse, pero sobretodo por las posibilidades de depuración de las aplicaciones que se ejecutan en ellos:

Android Virtual Device Manager<figcaption class="wp-caption-text">Android Virtual Device Manager</figcaption></figure>

Emulador Android lanzado desde Eclipse<figcaption class="wp-caption-text">Depuración del emulador Android lanzado desde Eclipse</figcaption>

Terminando

Este primer artículo no es más que una introducción a las herramientas que Google ofrece para los desarrollos sobre Android, y cómo se pueden integrar, y de hecho se integran, en el entorno de desarrollo Eclipse.

Muchos nos sentimos cómodos con la línea de comandos, y sinceramente, las herramientas del SDK de Android son bastante buenas en ese sentido: ayuda, parámetros para configurar todo, etc.

Sin embargo, un buen entorno de desarrollo donde todo esté a mano, visible, bajo la misma interfaz, me parece más eficiente. Pero esto sólo es el primer paso en la creación del entorno de desarrollo, y es el paso donde más entran los gustos de cada programador. Yo he elegido Eclipse porque es la herramienta que uso, pero podría haber sido cualquier otra. Incluso un editor, menos IDE, más editor, y la línea de comandos con las herramientas del SDK en el PATH.

En las siguientes entregas de esta serie entraré en profundidad en partes del entorno de desarrollo más importantes: la definición del proyecto software, sus dependencias, y el ciclo de vida completo del mismo, desde la instalación del entorno de desarrollo (clone-and-play), las pruebas y la integración final en producción…