«

»

may 16 2013

Android Studio, el nuevo IDE para Android

Tras la primera jornada del Google I/O los desarrolladores nos hemos llevado una sorpresa mayúscula, al menos yo, con la presentación de este nuevo IDE. Google nos presenta Android Studio, un IDE basado en IntelliJ IDEA Community Edition y que promete simplificar las tareas de desarrollo.

androcode_studio

laptop600

Hace tiempo que muchos desarrolladores android me hablaron de las bondades de IntelliJ IDEA pero no fue hasta hace poco cuando me decidí a empezar a usarlo.

Sobra decir que la experiencia ha sido buenísima y así lo he trasladado cada vez que he tenido la oportunidad. No merece la pena entrar en comparaciones Eclipse / IntelliJ, simplemente juegan en otra liga (que no se sientan ofendidos los amantes del IDE creado por IBM). Pero vayamos por partes, ¿qué tiene este Android Studio que lo hace mejor?

Sistema de construcción

¡Por fin! gritarán algunos y es que si has programado en Eclipse habrás sentido el dolor de cabeza que puede causar empaquetar un proyecto android con este IDE. Android necesitaba un nuevo sistema de construcción y los chicos de Google han decidido optar por Gradle. Tengo que decir que no tengo gran experiencia con este sistema de construcción pero hay varias características que me gustan bastante:

  • Utiliza un DSL (Lenguaje Específico de Dominio) basado en Groovy (nada de XMLs complejos)
  • Nos permite añadirlo a nuestros servidores de integración continua
  • Construcción por convención (al estilo Maven)
  • Compatible con dependencias Maven

La construcción de android se consigue gracias a un plugin del que podemos consultar toda la documentación a través del siguiente enlace.

Ayudas para la codificación

Cuando te haces con el manejo descubres que el editor de código de Android Studio tiene unas características únicas que facilitan considerablemente el desarrollo. La edición es más fluida, la refactorización más potente y un análisis de código que nos ayudará a mejorar considerablemente nuestro código.

Hay que decir que muchas de las características del IDE Android Studio ya estaban incluidas en IntelliJ IDEA pero de ahora en adelante hablaremos de Android Studio.

Previsualización de recursos

Una de las características que más me gustan es la de poder previsualizar los recursos. Por ejemplo si estamos en un drawable, podemos poner el cursor sobre el identificador, pulsar Ctrl + Q (comando para ver la documentación) y visualizar de un plumazo los drawables a distintos recursos.

android_studio_01

Algo parecido ocurre con los colores en el editor XML. Si ponemos un color nos aparecerá en la parte izquierda dicho color y al pulsar sobre él se nos mostrará un selector de color.

android_studio_03

Generación de recursos

Android Studio incluye diálogos para facilitar la generación de recursos para distintas configuraciones. Uno de los mejores ejemplos es a la hora de crear un string. Podemos seleccionar el cualificador de región y se nos mostrará una lista de países que podemos ir seleccionando. Esto resulta tremendamente útil porque incorpora todos los cualifiadores con sus variantes así que no tendremos que recordarlos de memoria.

android_studio_02

Detección de errores

Este IDE incorpora de forma transparente una herramienta de análisis de código que nos ayuda a mejorar la calidad del mismo. Además se realiza de forma automática, de forma que conforme vas escribiendo te va indicando posibles fallos o mejoras que puedes corregir en el código. Métodos sin utilizar, lógica demasiado compleja o condiciones que nunca van a darse serán detectadas por el IDE y nos permitirá con un “par de clicks” corregir dichos problemas.

Además este sistema de análisis lo han personalizado para que trabaje también sobre partes específicas de Android. Por ejemplo, el método getSystemService recibe un String como parámetro, así que en principio podríamos poner cualquier cadena. Si hacemos esto, el entorno nos mostrará un aviso de los posibles valores que deberían pasarse a dicho método.

android_studio_04

Refactorización

La refactorización es mucho más potente en Android Studio. Ahora podemos cambiar el nombre de una imagen y automáticamente se cambiará el nombre del identificador. A la inversa funcionaría exactamente igual. IntelliJ posee un sistema de refactorización muy avanzado y Android Studio se beneficia de eso.

Ayudas para el diseño

La parte de diseño es quizás la que pueda quedarse algo más corta con respecto al IDE anterior. No obstante es una herramienta con muchas posibilidades y que en el estado actual cubre la mayoría de las opciones de las que disponíamos antes e incluye cosas que mejoran lo anterior.

La previsualización de los layouts está bastante cuidada, marcando los elementos sobre los que estamos trabajando y permitiendo elegir entre distintos dispotivos, configuraciones, temas, etc.

android_studio_05 android_studio_06 android_studio_07

Acceso a los servicios de Google

Google ha hecho especial hincapié en facilitar el uso de sus servicios en nuestras aplicaciones. Lo hemos podido ver en las presentaciones del  Google Cloud Messaging (GCM) o en la presentación de Google Play Games. Con Android Studio quieren facilitar el acceso a todas estas herramientas desde nuestro entorno de desarrollo. Han empezado integrando los servicios del GCM y han introducido un nuevo plugin (ADT Translation Manager Plugin) para la traducción de nuestras aplicaciones e integrado con el servicio de traducción de la Google Play Developer Console.

Para finalizar, ¿qué mejor que Tor Norbye mostrándonos las principales características del Android Studio?

Por supuesto existen muchas más características que no hemos visto pero que iremos descubriendo con el uso por tanto os recomiendo que lo probéis y decidáis por vosotros mismos.

Importante: Como puede verse en la imagen que encabeza el artículo se trata de una versión preview. Esto quiere decir que no será todo lo estable que deseamos y que esta versión no se recomienda para un entorno de producción. En Windows por ejemplo da problemas, pero podemos solucionarlo (gracias a @DavidGNavas por el enlace) con lo que proponen en esta página.

android_studio_download

Acerca del autor

FedeProEx

Ingeniero Informático en la Universidad de Sevilla, programador Java y amante del Heavy Metal. Soy desarrollador android fuera del horario de trabajo con algunas aplicaciones en el market como Tiempo AEMET o aconTags

  • Carlos

    De todos los ide que utilizado en java,eclipse,netbeans y eclipse adt,este es el más problemático de los tres,todavia no lo he logrado abrir,al principio fue porque necesitaba el jdk x86 en windows 7 x64 (tenia el jdk,pero el x64) y el otro que tengo ahora es con algo que se llama gradle que no tengo ni idea de que es

  • Sebastián

    Gracias amigo por el artículo. Sabes que al crear un nuevo proyecto hay carpetas que no se me generan en el mismo, por ejemplo ‘java’ o ‘layout’, incluso el propio package principal.
    Trabajo sobre Windows. Tienes idea cual será el problema?
    Saludos.

    • FedeProEx

      Gracias!, la verdad es que he escuchado que el IDE da problemas en Windows. Prueba a actualizar el Android SDK, es posible que solucione el problema. Si lo consigues te agradecería que lo compartieras con nosotros.

      Saludos

    • grl

      Tuve el mismo problema, pero con esto lo pude solucionar.

      http://antiestudio.com/post/51939894247/instalando-android-studio-0-1-1

  • Pingback: La vida después del Google I/O | Androcode()

  • http://www.minimalstudio.tk donzok

    Yo he estado usando Android Studio (antes siempre Eclipse) y la verdad es que me gusta mucho mucho más Android Studio, solo hay 1 cosa que tenía eclipse y (creo) no tiene Android Studio, al ir a añadir algo al AndroidManifest.xml en Eclipse tienes una vista con campos y tal, en Android Studio sólo puedes hacerlo por código. Y otra cosa es que, si una clase implementa Activity, por ejemplo, no te da la opción (creo, de nuevo) de añadir los métodos de la interfaz que no tienes implementados (el típico “add unimplemented methods” de eclipse). Quitando esos detalles, Android Studio me gusta mucho más que eclipse, lo recomiendo.

    PD: Quizás ambas cosas pueden hacerse, y yo no he descubierto aun cómo.

    • FedeProEx

      Para lo primero la verdad es que ni idea yo siempre he sido más de editar el XML en código :)

      Con respecto a lo segundo, la solución es Ctrl+O, te permite además una búsqueda entre los métodos de la super clase o interfaz mucho más avanazada.

      Saludos!

  • Robert Parra Ciro

    Hoy empece ha probar el IDE y poco mas decir que es fantástico. Solo quería hacerte una pregunta FedeProEx, Hace poco que estoy programando con JNI y queria saber si en este IDE es posible hacer esto. yo actualmente estoy programando con eclipse y usando el NDK para poder compilar codigo c++ y me gustaria hacerlo en este nuevo IDE. gracias de antemano

  • Pingback: Desarrollando para Android en Ubuntu con Android Studio | El atareao()

  • Roberto Carlos

    Hola mi nombre es Roberto yo he programado en muchos lenguajes pero lamentablemente no en Java ni Android, estoy buscando ejemplo para empezar con Android Studio no encuentro mucho en el internet, lo único el ejemplo que viene con el instalador de Andriod que me parecio muy sencillo, me gustaría saber si alguien me puede ayudar con aplicaciones de ejemplo, ya que me fascina lo que es el software libre que se va a imponer en el mundo.
    Saludos desde Ecuador

  • Vicent

    He instalado Android Studio sobre Windows 7 64 bits y el ultimo paso después de la instalación es la creación de un proyecto nuevo. Salen unas pestañitas en horizontal que pueden ir abriéndose hacia la derecha hasta llegar a los ficheros de código pero es imposible conseguir que se abra el explorador de archivos y tampoco ver ningún fichero en su editor correspondiente. Nada de nada.

    • Roberto

      Hola lo probe y me gusto mucho lamentablemente recién estoy empezando con programación Android, pero no encontré muchos ejemplos con este IDE por lo que me puse a investigar y estoy usando eclipse hasta aprender mas de Android; pero si me gustaría usar Adroid Studio me gusto mucho su interfaz grafica y es mas amigable que Eclipse.
      Saludos me gustaría aprender este lenguaje y dominarlo yo soy de Ecuador y pues apoyo mucho el software libre.
      Un Abrazo

      • FedeProEx

        Si, desgraciadamente hay pocos tutoriales sobre este IDE. Uno va aprendiento con el uso, gracias por leer el blog.

    • FedeProEx

      Hola!, lamentablemente utilizo linux y no he escuchado nada parecido. Intenta buscar en http://stackoverflow.com/ a ver si hay gente con tu mismo problemas. Saludos!

  • Rodolfo morales

    Muchas gracias segui los pasos y me funciono sin ningun problema. Tambien tome este curso y aprendi mucho http://www.grupocodesi.com/cursos/curso-de-android.html