ACTUALIZACIÓN [15/12/2010]: AppInventor ya está abierto a todo el mundo. No se requiere ya una invitación previa.

EDIT: Os recomendamos pasaros por el ForoAndroides.com donde tenemos una sección dedicada al AppInventor.

EDIT: Ya podéis ver cómo se crea una aplicación desde cero aquí.

Hace ya unas cuantas semanas que recibimos la invitación por parte de Google para probar AppInventor. Ahora que lo he trasteado un poco quiero mostrarlo al público e intentar resolver vuestras dudas. En este artículo haré una breve introducción a la aplicación en cuestión y en próximas entregas haré una demo de cómo crear una aplicación desde cero.

¿Qué es AppInventor?

AppInventor es una aplicación web que tiene como objetivo facilitar la programación en Android. Está pensado y diseñado de manera que una persona que no tenga ni idea de programar pueda crearse su aplicación Android en media hora.

AppInventor consta de 2 apartados principales. El primero es la aplicación web en la que podrás diseñar la interfaz gráfica y definir los componentes y variables de tu futura aplicación. Podemos definir 8 lugares de interés

1] Para navegar ente Proyectos, Diseños y Ejemplos

2] Todos los elementos gráficos que puedes añadir. Desde botones hasta sensores de movimiento pasando por clientes Twitter.

3] Cómo quedará la aplicación. Arregla y ordena los elementos a tu gusto

4] Los componentes activos que tienes actualmente. Puedes cambiarles el nombre o borrarlos

5] Los componentes no visibles: están en la aplicación pero no tienen “representación gráfica” (ej: notificación, sensores,…)

6] Las propiedades de cada elemento. Aquí puedes cambiar el nombre, color, tamaño, textos y demás.

7] Abre el Editor de Bloques (explicado a continuación)

8] Guarda y comparte tu aplicación con todo el mundo

El editor de Bloques

En la web tan sólo puedes diseñar el apartado visual, pero el programa no funcionará: pones las piezas pero es en el editor dónde defines que hace cada cosa.

Podemos distinguir

1] Entre Mis Bloques y los Built-in Blocks

Cada botón o cuadro de texto de tu programa corresponde a un bloque (2). Con el editor de bloques puedes interaccionar con los bloques para realizar las funciones que desees. Lo verás con más detalle en la próxima entrega con el vídeo de una aplicación.

Los Built-in Blocks corresponden a bloques predefinidos que realizan acciones tales como bucles, lógica u operaciones matemáticas entre otras.

2] Cada uno de los componentes de tu programa. Desde aquí podrás asignarles las funciones que quieras.

3] Todo el tablero en el que introducir las órdenes. Muy pequeño a mi gusto.

4] Botón para enviar la aplicación al teléfono para testearla.

Observaciones

  • El conjunto de los dos te permite crear una aplicación de una manera relativamente sencilla. Digo “relativamente” ya que necesitas unas pocas nociones de sentido común y de “mente de programador” para manejar correctamente los bloques.
  • AppInventor me ha funcionado de manera perfecta y me ha permitido crear una primera aplicación en 30 minutillos. Así que ya estoy pensando en todo momento cientos de aplicaciones que puedo hacer con él. Una maravilla en ese aspecto.
  • ¿Cuál es el problema? Pues que si todo el mundo puede de una manera relativa crear aplicaciones “fácilmente” y publicarlas corremos el riesgo de llenar de basura el Market. Estaría bien en ese aspecto un “market alternativo” de aplicaciones AppInventor, o que Google filtrase las aplicaciones de buena calidad. Pero claro, entramos entonces en terrenos pantanosos. No sé muy bien que se hará al respecto.
  • Echamos en falta la posibilidad de transferir el código creado con el AppInventor a otro editor como el Eclipse para continuar “picando código” y mejorando la aplicación. Una aplicación creada con el AppInventor sólo se puede editar con el AppInventor :S pero creo que a la larga se implementará la integración con Eclipse y otros.

Decir que AppInventor sólo está en versión beta privada y que debéis pedir vuestra invitación para probarla. En un par de días hago una segunda parte explicando cómo crear una aplicación desde cero.