Está en la página 1de 32

App I nventor

CI-2657 Robtica M.Sc. Kryscia Ramrez Benavides

Qu nos ofrecen las aplicaciones mviles?


Versatilidad. Ahorro de costos. Adaptacin a la forma de trabajo. Ampliacin de capacidades de cada unidad.

CI-2657 Robtica App Inventor

Qu es App Inventor?
App Inventor es una aplicacin originalmente desarrollada por Google y mantenida ahora por el Instituto de Tecnologa de Massachusetts. Permite que cualquier persona, incluyendo las no familiarizadas con la programacin y SDK de Android, pueda crear aplicaciones de Software para Android. Utiliza una interfaz grfica, muy similar al Scratch y el StarLogo, que permite a los usuarios arrastrar y soltar objetos visuales para crear una aplicacin que puede ejecutarse en el sistema Android. Google puso fin al desarrollo el 31 de diciembre de 2011 cedindole el cdigo al MIT, quin lo ha puesto a disposicin de todos.
CI-2657 Robtica App Inventor 3

Qu es App Inventor? (cont.)


Se trata de una utilidad Web desarrollada por Google que permite realizar aplicaciones para Android sin escribir cdigo Java, todo de forma visual e intuitiva (uniendo piezas de un puzle). Permite a cualquiera crear aplicaciones de software para el sistema operativo Android.

Utiliza una interfaz grfica que permite a los usuarios arrastrar y soltar objetos visuales para crear una aplicacin que puede ejecutarse en el sistema Android, que funciona en muchos dispositivos mviles. Todo ello sin usar ni una sola lnea de cdigo, de forma intuitiva y grfica.
4

CI-2657 Robtica App Inventor

Qu es App Inventor? (cont.)


La aplicacin se puso a disposicin de los usuarios, mediante invitacin, el 12 de julio de 2010, el 15 de diciembre de 2010 se puso a disposicin de usuarios registrados. La aplicacin est dirigida a personas que no estn familiarizadas con la programacin de computadoras. La idea es que cualquier persona pueda desarrollarse sus propias aplicaciones para su dispositivo Android.
CI-2657 Robtica App Inventor 5

Qu es App Inventor? (cont.)


Se ejecuta va web, slo es necesario ejecutar una pequea aplicacin para mostrar el Editor de Bloques (Block Editor) y el emulador, incluso las aplicaciones se guardarn en la web. Permite conectarse directamente al equipo Android, aunque en algunos casos no ser posible, por ello incluye un emulador para probar las aplicaciones que se desarrollen. Permite guardar el proyecto en PC, para enviarlo a otros usuarios o para hacer copia de seguridad y permite tambin descargar la aplicacin .apk compilada para ser instalada en el dispositivo Android.
Por lo cual no se necesita ningn tipo de compilador ni nada por el estilo, todo se realiza en el entorno de App Inventor. Por lo cual se puede acceder a nuestros proyectos desde cualquier equipo conectado a Internet.

CI-2657 Robtica App Inventor

Qu es App Inventor? (cont.)

CI-2657 Robtica App Inventor

Historia
En la creacin de App Inventor para Android, Google se bas en la investigacin de la informtica educativa, y el trabajo realizado en entornos de desarrollo en lnea. El editor de bloques utiliza la biblioteca Open Blocks de Java para la creacin de lenguajes de programacin visuales.
Open Blocks esta distribuida por el Massachusetts Institute of Technology Program s Scheller para
formacin de profesorado y deriva de la investigacin de la tesis de Ricarose Roque.

El profesor Eric Klopfer y Daniel Wendel del Programa Scheller apoyaron la distribucin de bloques abiertos bajo la licencia MIT.
CI-2657 Robtica App Inventor

Historia (cont.)
La programacin de bloques abiertos y visual est estrechamente relacionada con el StarLogo, un proyecto de Klopfer, y Scratch, un proyecto de la MIT.

Como tal, es parte de un movimiento continuo en las computadoras y la educacin que se inici con el trabajo de Seymour Papert y el Grupo de Logo del MIT en 1960, y tambin se ha manifestado con el trabajo de Mitchel Resnick, Lego Mindstorms y StarLogo. El equipo de App Inventor fue dirigido por Hal Abelson y Mark Friedman.
CI-2657 Robtica App Inventor

Estos proyectos estn formados por teoras del aprendizaje construccionista, que hace hincapi en que la programacin puede ser un vehculo para conseguir ideas de gran alcance a travs del aprendizaje activo.

Ventajas y Desventajas
No es necesario instalar un IDE. Son necesarios mnimos conocimientos de programacin. Desarrollo rpido de aplicaciones con bajos niveles de error. Almacenamiento en la nube.
CI-2657 Robtica App Inventor

No se pueden subir al Android Market (aun). No permite diferentes actividades en una aplicacin. Tamao elevado de APK. No permite aplicaciones complejas, aunque si completas.
10

Utilizando App Inventor


A construir aplicaciones se trabaja con:
componentes de la aplicacin. App Inventor Blocks Editor, donde se ensamblan los mdulos del programa que especifican cmo deben comportarse los componentes. Se montan programas visuales, piezas encajando como piezas de un rompecabezas.

App Inventor Designer, donde se seleccionan los

La aplicacin realizada aparece en el telfono paso a paso a medida que se aaden piezas a la misma, para poder probar el trabajo a medida que se construye. Cuando se ha terminado, se puede empaquetar la aplicacin y producir una aplicacin independiente para instalar.
Si no se tiene un telfono Android, se puede construir las aplicaciones utilizando el emulador de Android, el software que se ejecuta en el ordenador y se comporta como el telfono.

CI-2657 Robtica App Inventor

11

Utilizando App Inventor (cont.)


Este entorno de desarrollo es compatible con Mac OS X, GNU / Linux, y los sistemas operativos Windows, y varios modelos ms populares de Android. Las aplicaciones creadas se puede instalar en cualquier telfono Android. (Consultar los requisitos del sistema.) Para poder utilizar App Inventor, es necesario configurar el equipo e instalar el paquete de instalacin de App Inventor en el equipo.
CI-2657 Robtica App Inventor 12

CI-2657 Robtica App Inventor

13

Requerimientos de Sistema
Ordenador y sistema operativo:
Macintosh (con procesador Intel): Mac OS X 10.5, 10.6. Windows: Windows XP, Windows Vista, Windows 7. GNU/Linux: Ubuntu 8+, Debian 5+. Mozilla Firefox 3.6 o superior.

Navegador (Browser):

Nota: Si est utilizando Firefox con la extensin NoScript, tiene que obtener la extensin. Consulte note on the troubleshooting page.

Apple Safari 5.0 o superior. Google Chrome 4.0 o superior. Microsoft Internet Explorer 7 o superior.
CI-2657 Robtica App Inventor 14

Base de Datos Telfonos y Tablets


Base de datos de los dispositivos conocidos para trabajar con App Inventor:

https://docs.google.com/spreadsheet/ccc?key=0 AgIdRCXI87uXdEZxR0ppRGZkNENpbDZuQnY3a0 wyenc#gid=0

CI-2657 Robtica App Inventor

15

CI-2657 Robtica App Inventor

16

CI-2657 Robtica App Inventor

17

CI-2657 Robtica App Inventor

18

CI-2657 Robtica App Inventor

19

URL: http://beta.appinventor.mit.edu/#2187034

CI-2657 Robtica App Inventor

20

App Inventor Designer - Editor Visual de


Componentes

Paleta de componentes
CI-2657 Robtica App Inventor

Visor de componentes insertados

rbol de componentes y multimedia

Propiedades de componentes
21

Bloques

App Inventor Blocks Editor - Editor de

CI-2657 Robtica App Inventor

22

Bloques

App Inventor Blocks Editor - Editor de

CI-2657 Robtica App Inventor

23

Editor de Bloques (cont.)


Evento Asignacin de valores a variables

Llamadas a acciones
CI-2657 Robtica App Inventor 24

Ejecucin en Emulador

CI-2657 Robtica App Inventor

25

Componentes de LEGO MINDSTORMS


Estos componentes proporcionan un control para los robots del NXT de LEGO MINDSTORMS utilizando Bluetooth. IMPORTANTE: Todos estos componentes tienen una propiedad BluetoothClient que se debe establecer en el diseador del App Inventor (en el navegador). La propiedad no se puede configurar en el editor de bloques.

La propiedad indica qu componente BluetoothClient se utiliza para la comunicacin con el robot. Se tiene que aadir explcitamente un componente BluetoothClient a su proyecto.
Si se tiene un robot, se debe tener un componente BluetoothClient. Si se tiene dos robots y se desea controlar ambos simultneamente desde una sola aplicacin, se tendrn dos componentes BluetoothClient en el proyecto.

El componente BluetoothClient est disponible en el "Not ready for prime time" de la paleta.
CI-2657 Robtica App Inventor 26

Componentes de LEGO MINDSTORMS (cont.)


Lista de los pasos iniciales para realizar una aplicacin utilizando uno o ms de los componentes del NXT:
Ir a la paleta y haga clic en "Not ready for prime time". Arrastre un componente BluetoothClient y sultelo en el Visor. El componente automticamente se llamar "BluetoothClient1". En la Paleta, haga clic en "LEGO MINDSTORMS". Arrastre uno de los componentes, por ejemplo NxtDirectCommands, y sultelo en el Visor. En el cuadro Propiedades, haga clic en el rea despus de BluetoothClient (actualmente Not ..."). Aparece un cuadro con una lista de todos los componentes BluetoothClient en su proyecto. Haga clic en BluetoothClient1 y haga clic en Aceptar. Si lo desea, agregue otro componente, por ejemplo NxtColorSensor, y repita los pasos 6-8 para fijar su propiedad BluetoothClient.

CI-2657 Robtica App Inventor

27

Componentes de LEGO MINDSTORMS (cont.)


NxtDirectCommands. Proporciona una interfaz de bajo nivel para un robot LEGO MINDSTORMS NXT, con funciones para enviar comandos directos al NXT. NxtColorSensor. Proporciona una interfaz de alto nivel para el sensor de color. NxtLightSensor. Proporciona una interfaz de alto nivel para el sensor de luz. NxtSoundSensor. Proporciona una interfaz de alto nivel para el sensor de sonido.
CI-2657 Robtica App Inventor 28

Componentes de LEGO MINDSTORMS (cont.)


NxtTouchSensor. Proporciona una interfaz de alto nivel para el sensor de tacto. NxtUltrasonicSensor. Proporciona una interfaz de alto nivel para el sensor ultrasnico. NxtDrive. Proporciona una interfaz de alto nivel para un robot LEGO MINDSTORMS NXT, con funciones para mover y girar el robot. URL: http://appinventor.mit.edu/explore/content/l ego-mindstorms.html.
CI-2657 Robtica App Inventor 29

Referencias Bibliogrficas
Bagnall, Brian. Intelligence Unleashed: Creating LEGO NXT Robots with Java. Variant Press. Septiembre, 2011. Wolber, David; Abelson, Hal; Spertus, Ellen; & Looney, Liz. App Inventor: Create Your Own Android Apps. O'Reilly Media. Mayo, 2011. AppInventor. URL: http://appinventor.mit.edu/explore/. Documentacin de Referencia. URL: http://appinventor.mit.edu/explore/content/r eference-documentation.html.
CI-2657 Robtica App Inventor 30

CI-2657 Robtica App Inventor

31

Gracias!
M.Sc. Kryscia Daviana Ramrez Benavides

Profesora e Investigadora Universidad de Costa Rica Escuela de Ciencias de la Computacin e Informtica Sitio Web: E-Mail: Redes Sociales:
CI-2657 Robtica App Inventor

http://www.kramirez.net/ kryscia.ramirez@ucr.ac.cr kryscia.ramirez@ecci.ucr.ac.cr

32