Está en la página 1de 32

App Inventor

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
2
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.
CI-2657 Robtica
App Inventor
4
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.
Por lo cual se puede acceder a nuestros proyectos desde
cualquier equipo conectado a Internet.
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.
CI-2657 Robtica
App Inventor
6
Qu es App Inventor? (cont.)
CI-2657 Robtica
App Inventor
7
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
8
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.
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.
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
9
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.
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.
CI-2657 Robtica
App Inventor
10
Utilizando App Inventor
A construir aplicaciones se trabaja con:
App Inventor Designer, donde se seleccionan los
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.
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+.
Navegador (Browser):
Mozilla Firefox 3.6 o superior.
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
CI-2657 Robtica
App Inventor
20
u8L: hLLp://beLa.applnvenLor.mlL.edu/#2187034
App Inventor Designer - Editor Visual de
Componentes
CI-2657 Robtica
App Inventor
21
aleLa de
componenLes
vlsor de
componenLes
lnserLados
rbol de
componenLes
y mulLlmedla
ropledades de
componenLes
App Inventor Blocks Editor - Editor de
Bloques
CI-2657 Robtica
App Inventor
22
App Inventor Blocks Editor - Editor de
Bloques
CI-2657 Robtica
App Inventor
23
Editor de Bloques (cont.)
CI-2657 Robtica
App Inventor
24
LvenLo
Aslgnacln de
valores a varlables
Llamadas a acclones
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
31
CI-2657 Robtica
App Inventor
32
Gracias!
M.Sc. Kryscia Daviana Ramrez Benavides
Profesora e Investigadora
Universidad de Costa Rica
Escuela de Ciencias de la Computacin e Informtica

Sitio Web: http://www.kramirez.net/
E-Mail: kryscia.ramirez@ucr.ac.cr
kryscia.ramirez@ecci.ucr.ac.cr
Redes Sociales:

CI-2657 Robtica
App Inventor