You are on page 1of 32

App I nventor

CI-2657 Robótica
M.Sc. Kryscia Ramírez Benavides
¿Qué nos ofrecen las aplicaciones
móviles?
Versatilidad.
Ahorro de costos.
Adaptación a la forma de trabajo.
Ampliación de capacidades de cada unidad.

CI-2657 Robótica
2
App Inventor
¿Qué es App Inventor?
App Inventor es una aplicación originalmente
desarrollada por Google y mantenida ahora por
el Instituto de Tecnología de Massachusetts.
Permite que cualquier persona, incluyendo las
no familiarizadas con la programación y SDK de
Android, pueda crear aplicaciones de Software
para Android.
Utiliza una interfaz gráfica, muy similar al
Scratch y el StarLogo, que permite a los
usuarios arrastrar y soltar objetos visuales para
crear una aplicación que puede ejecutarse en el
sistema Android.
Google puso fin al desarrollo el 31 de diciembre
de 2011 cediéndole el código al MIT, quién lo ha
puesto a disposición de todos.
CI-2657 Robótica
3
App Inventor
¿Qué es App Inventor? (cont.)

Se trata de una utilidad Web desarrollada por


Google que permite realizar aplicaciones
para Android sin escribir código 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 gráfica que permite a los usuarios
arrastrar y soltar objetos visuales para crear una
aplicación que puede ejecutarse en el sistema
Android, que funciona en muchos dispositivos
móviles.
Todo ello sin usar ni una sola línea de código, de
forma intuitiva y gráfica.
CI-2657 Robótica
4
App Inventor
¿Qué es App Inventor? (cont.)

La aplicación se puso a disposición de los


usuarios, mediante invitación, el 12 de julio
de 2010, el 15 de diciembre de 2010 se puso
a disposición de usuarios registrados.
La aplicación está dirigida a personas que no
están familiarizadas con la programación de
computadoras.
La idea es que cualquier persona pueda
desarrollarse sus propias aplicaciones para
su dispositivo Android.

CI-2657 Robótica
5
App Inventor
¿Qué es App Inventor? (cont.)
Se ejecuta vía web, sólo es necesario ejecutar una
pequeña aplicación para mostrar el Editor de Bloques
(Block Editor) y el emulador, incluso las aplicaciones se
guardarán 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
también descargar la aplicación .apk compilada para ser
instalada en el dispositivo Android.
Por lo cual no se necesita ningún tipo de compilador ni nada
por el estilo, todo se realiza en el entorno de App Inventor.

CI-2657 Robótica
6
App Inventor
¿Qué es App Inventor? (cont.)

CI-2657 Robótica
7
App Inventor
Historia

En la creación de App Inventor para Android,


Google se basó en la investigación de la
informática educativa, y el trabajo realizado en
entornos de desarrollo en línea.
El editor de bloques utiliza la biblioteca Open
Blocks de Java para la creación de lenguajes de
programación visuales.
Open Blocks esta distribuida por el Massachusetts
Institute of Technology Program ‘s Scheller para
formación de profesorado y deriva de la investigación
de la tesis de Ricarose Roque.
El profesor Eric Klopfer y Daniel Wendel del
Programa Scheller apoyaron la distribución de
bloques abiertos bajo la licencia MIT.
CI-2657 Robótica
8
App Inventor
Historia (cont.)
La programación de bloques abiertos y visual está
estrechamente relacionada con el StarLogo, un
proyecto de Klopfer, y Scratch, un proyecto de
la MIT.
Estos proyectos están formados por teorías del aprendizaje
construccionista, que hace hincapié en que la programación
puede ser un vehículo para conseguir ideas de gran alcance
a través del aprendizaje activo.
Como tal, es parte de un movimiento continuo en
las computadoras y la educación que se inició con el
trabajo de Seymour Papert y el Grupo de Logo del
MIT en 1960, y también 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 Robótica
9
App Inventor
Ventajas y Desventajas

No es necesario No se pueden subir al


instalar un IDE. Android Market (aun).
Son necesarios No permite diferentes
mínimos actividades en una
conocimientos de aplicación.
programación. Tamaño elevado de
Desarrollo rápido de APK.
aplicaciones con bajos No permite
niveles de error. aplicaciones
Almacenamiento en la complejas, aunque si
nube. completas.

CI-2657 Robótica
10
App Inventor
Utilizando App Inventor
A construir aplicaciones se trabaja con:
App Inventor Designer, donde se seleccionan los
componentes de la aplicación.
App Inventor Blocks Editor, donde se ensamblan los
módulos del programa que especifican cómo deben
comportarse los componentes. Se montan programas
visuales, piezas encajando como piezas de un
rompecabezas.
La aplicación realizada aparece en el teléfono paso a
paso a medida que se añaden piezas a la misma,
para poder probar el trabajo a medida que se
construye. Cuando se ha terminado, se puede
empaquetar la aplicación y producir una aplicación
independiente para instalar.
Si no se tiene un teléfono Android, se puede construir las
aplicaciones utilizando el emulador de Android, el software
que se ejecuta en el ordenador y se comporta como el
teléfono.
CI-2657 Robótica
11
App Inventor
Utilizando App Inventor (cont.)

Este entorno de desarrollo es compatible con


Mac OS X, GNU / Linux, y los sistemas
operativos Windows, y varios modelos más
populares de Android.
Las aplicaciones creadas se puede instalar en
cualquier teléfono Android. (Consultar los
requisitos del sistema.)
Para poder utilizar App Inventor, es
necesario configurar el equipo e instalar el
paquete de instalación de App Inventor en el
equipo.
CI-2657 Robótica
12
App Inventor
CI-2657 Robótica
13
App Inventor
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 extensión NoScript,
tiene que obtener la extensión. 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 Robótica
14
App Inventor
Base de Datos Teléfonos 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 Robótica
15
App Inventor
CI-2657 Robótica
16
App Inventor
CI-2657 Robótica
17
App Inventor
CI-2657 Robótica
18
App Inventor
CI-2657 Robótica
19
App Inventor
URL: http://beta.appinventor.mit.edu/#2187034

CI-2657 Robótica
20
App Inventor
App Inventor Designer - Editor Visual de
Componentes

Visor de Árbol de
Paleta de Propiedades de
componentes componentes
componentes componentes
insertados y multimedia
CI-2657 Robótica
21
App Inventor
App Inventor Blocks Editor - Editor de
Bloques

CI-2657 Robótica
22
App Inventor
App Inventor Blocks Editor - Editor de
Bloques

CI-2657 Robótica
23
App Inventor
Editor de Bloques (cont.)
Evento Asignación de
valores a variables

Llamadas a acciones

CI-2657 Robótica
24
App Inventor
Ejecución en Emulador

CI-2657 Robótica
25
App Inventor
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
diseñador 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 comunicación con el robot.
Se tiene que añadir explícitamente 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 simultáneamente
desde una sola aplicación, se tendrán dos componentes
BluetoothClient en el proyecto.
El componente BluetoothClient está disponible en el "Not
ready for prime time" de la paleta.
CI-2657 Robótica
26
App Inventor
Componentes de LEGO®
MINDSTORMS® (cont.)
Lista de los pasos iniciales para realizar una aplicación
utilizando uno o más de los componentes del NXT:
Ir a la paleta y haga clic en "Not ready for prime time".
Arrastre un componente BluetoothClient y suéltelo en el Visor.
El componente automáticamente se llamará
"BluetoothClient1".
En la Paleta, haga clic en "LEGO MINDSTORMS".
Arrastre uno de los componentes, por ejemplo
NxtDirectCommands, y suéltelo en el Visor.
En el cuadro Propiedades, haga clic en el área después 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 Robótica
27
App Inventor
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 Robótica
28
App Inventor
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
ultrasónico.
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 Robótica
29
App Inventor
Referencias Bibliográficas

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/.
Documentación de Referencia. URL:
http://appinventor.mit.edu/explore/content/r
eference-documentation.html.
CI-2657 Robótica
30
App Inventor
CI-2657 Robótica
31
App Inventor
¡Gracias!

M.Sc. Kryscia Daviana Ramírez Benavides


Profesora e Investigadora
Universidad de Costa Rica
Escuela de Ciencias de la Computación e Informática

Sitio Web: http://www.kramirez.net/


E-Mail: kryscia.ramirez@ucr.ac.cr
kryscia.ramirez@ecci.ucr.ac.cr
Redes Sociales:

CI-2657 Robótica
32
App Inventor

You might also like