Title: Programació APP Inventor 2
Course: CFGS - Disseny i edició de publicacions impreses i multimèdia > Section: Programació d'APPs per a dispositius mòbils

Programació APP Inventor 2

Què és AppInventor?

Per poder utilitzar App Inventor heu de tenir un compte de gmail. L'enllaç és el següent: http://appinventor.mit.edu/ - botó CREATE - L'aplicació us sol·licitarà permís per accedir al vostre Compte de Google. Seleccioneu un compte que vulgueu utilitzar, un cop fet això ja estareu en disposició de començar a treballar.

A programar només se n'aprén programant, fent i desfent, practicant, provant, errant, descobrint l'error i tornant-hi... En programació no cal tenir por, només ganes de provar i provar.

El ideal seria fer petites pràctiques abans d'endinsar-nos a fer la nostra app, però degut a la duració de la nova UF, segurament no serà possible. En aquest tema veurem diferents exemples d'aplicacions mòbils que caldrà anar millorant com a exercici però que alhora ens serviran per endinsar-nos en el món de APPInventor i els diferents components que el composen.

Aquests tutorials us poden anar molt bé:

- http://appinventor.mit.edu/explore/ai2/tutorials?
- http://www.appinventor.org/
- https://sites.google.com/site/appinventormegusta/
- http://appinventor.blogs.upv.es/ejemplos-de-programacion/
- http://blogromerojacfsmr.blogspot.com.es/
- Fusion tables: http://ateneu.xtec.cat/wikiform/wikiexport/cmd/tac/computacional/b15_ai_fusiontables/index
- Video Fusion tables: http://cdn.b3.eu.nice264.com//converted_work2/9/f/9f57f32cd0936597a4f1/9f57f32cd0936597a4f1_12d0f9bf2961b2ae401be7ba45dbc314.mp4

Nocions bàsiques de programació i AI2

Variable

Una variable és un element al qual li donem un nom i li atribuïm un determinat tipus d’informació. El valor d’una variable va canviant. Una variable pot contenir diferents tipus d’informació: nombres, text, llistes,…
Hi ha dos tipus de variables segons el lloc del programa on s’usa: variables locals i variables globals.

Variables locals i variables globals

Les globals es poden utilitzar en tot el programa. Abans de poder fer-les servir cal declarar-les, indicant de quina tipologia són i definir-ne un valor, ho farem de la següent forma:

name – el podem canviar i posarem el nom de la variable global

El nom pot ser qualsevol cadena de caràcters, encara que en tots els llenguatges de programació es recomana no utilitzar: espais, lletres accentuades, caracters especials.

Faltarà indicar quin tipus de dades tindrà:

Segons la tipologia de les variables, podrem fer diferents tipus d'operacions. Aquestes operacions estan disponibles en l'apartat de blocs segons la tipologia, tal i com s'indica a continuació:

- Boolean: o de tipus lògic, pot prendre valors de cert o fals. En elles podrem guardar estats, funciona com si es tractes d'un interruptor de dues posicions. Les seves operacions són:

- Nombres: Valors numerals, on podrem emmagatzemar nombres reals o sencers, les seves operacions seran operacions matemàtiques. També podrem obtenir valors aleatoris en cas que sigui necessari.

- Text: Cadenes de caràcters, en aquest tipus de variables, podrem emmagatzemar cadenes de caràcters, paraules, frases, valors numèrics (encara que no s'hi podran fer operacions)

- Llistes: Aquest tipus de variables ens permetrà tenir llistes de valors de tots els tipus, que seran accessibles per la seva posició. Les operacions de llistes ens permetran afegir elements, així com modificar-los o eliminar-los.

Per fer les operacions d'assignació de valors a les variables, accedir als seus valors així com inicialitzar-les, emprarem les eines de què disposem dins de l'apartat variables, tal i com es mostra a continuació:

Constant

Una constant és un element al qual li donem un nom i li atribuïm un determinat tipus d’informació. El valor d’una constant no canvia, sempre té el mateix valor.

Amb AppInventor2, les constants es defineixen com les variables, però no els hi anem assignant valors nous

Funció i Procediment

- Funció: Conjunt d’instruccions amb un objectiu en particular, i que s’executa quan és cridada. Pot rebre valors de fora (paràmetres) i retornen un resultat
- Procediment: Exactament com la funció, amb la única diferència que no retorna cap resultat.

Per poder afegir paràmetres a les funcions o procediments podrem emprar les eines que ens apareixen en el requadre superior esquerra de la definició, tal i com es mostra a continuació:

Pas de la nostra app al dispositiu de visualització

Atenció: per poder instal·lar la vostra app (codi .apk) al vostre dispositiu de visualització, primer heu de “configurar-lo” per tal que permeti la instal·lació d’aplicacions d’origens que no siguin Play Store.

Ajustaments – Seguretat – Administració del dispositiu – Orígens desconeguts activat

En funció de la versió instal·lada d'Android del vostre dispositiu, aquesta disposició pot variar d'ubicació i nomenclatura.

El Dissenyador i Editor de blocs s'executen completament en el navegador (també conegut com el núvol). Per veure i provar l’aplicació en el dispositiu hi ha varies maneres:

- Passant l’executable al dispositiu: per veure les modificacions que es realitzen, cada vegada s’ha de generar l’.apk, passar-lo al dispositiu de visualització, i executar-lo
- Realitzant proves en viu: tot el es fa a l'app des d’AI2, es veu reflectit al dispositiu de visualització després d'haver associat un dispositiu amb l'aplicació
- Emprant el simulador que prèviament haurem instal·lat en el PC on estiguem executant APPInventor

Executable al dispositiu

[ 1 - Provide QR code for .apk ]
Aquesta opció proporciona un codi QR per pantalla que ens permet descarregar l'APP per poder-la instal·lar en el dispositiu. Per fer-ho cal disposar d'un lector de codis QR en el dispositiu.

[ 2 - Save .apk to my computer ]
Aquesta opció permet descarregar l'arxiu .APK per poder instal·lar-lo emprant el software del propi dispositiu.

Proves en viu

Per poder executar l'aplicació directament en el dispositiu i poder anar modificant el seu contingut en el núvol haurem d'instal·lar l'aplicació AI Companion en el dispositiu.

https://play.google.com/store/apps/details?id=edu.mit.appinventor.aicompanion3&hl=es

I posteriorment enllaçar el nostre desenvolupament amb el dispositiu. Per fer-ho cal obtenir un codi d'enllaç que ens permetrà associar el núvol amb el dispositiu.

Emulador

Una altra opció per poder executar l'aplicació que desenvolupem i comprovar el seu funcionament és la utilització del emulador que està disponible per a totes les plataformes (Windows, Linux, MAC)

http://appinventor.mit.edu/explore/ai2/setup-emulator.html

Pas del codi font (.aia) al nostre PC

Amb aquesta opció podrem desar un projecte desenvolupat en APP Inventor 2 en el nostre dispositiu, per posteriormet si cal importar-lo de nou o per penjar-lo en el moodle com una activitat.

Combinar dos projectes d'App Inventor en un

Per poder combinar o unir dos projectes d'app inventor, s'ha d'instal·lar un mòdul.

http://appinventor.mit.edu/explore/resources/ai2-project-merger.html

Aquest eina serà molt útil ja que es realitzarà un únic projecte col·laboratiu de tots els alumnes, o tants projectes com grups de 3-4 alumnes es facin. Amb ambdues opcions, cada alumne, amb el consens del grup, pot realitzar una part del projecte, és a dir alguna pàgina de l'app. Mitjançant aquesta eïna, Merger Tool, es podran anar unint o combinant els diferents projectes en un de sol.