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

Where APP

Introducció

En aquesta app caldrà emprar el sensor del smartphone que es correspon al GPS, per obtenir la posició geogràfica on ens trobem. Mitjançant un botó podrem indicar-li al telèfon que ens mostri aquesta posició en un mapa.

Disseny de la interficie

En la pantalla principal de l’aplicació trobarem els següents components

OBSERVACIÓ: Per facilitar la comprensió de l’activitat, es recomana, reanomenar tots els elements tal i com es mostra en l’exercici. És una bona pràctica anomenar de forma comprensible tots els elements d’una aplicació per tal de seguir-ne de forma eficient el seu desenvolupament, sobretot quan la APP és prou extensa.

Per organitzar la interficie de la nostra APP emprarem els HorizontalArrangement que permeten organitzar els elements del seu interior de forma horitzontal. Per a què ocupin tota la pantalla disponible del dispositiu caldrà establir-ne la seva amplada, tal i com s’indica a continuació.

En les etiquetes on es mostrarà la informació serà necessari adaptar-ne l’aspecte visual, tal i com s’indica a continuació.

Per completar la interfície gràfica i permetre a l’usuari mostrar el mapa de la seva ubicació, ens serà necessari un botó amb les propietats següents:

Un cop creada la interfície caldrà afegir els dos elements que no tenen representació gràfica però que permetran a l'APP comunicar-se amb el sensor del dispositiu i amb l’aplicació integrada de Google Maps.

Action:   android.intent.action.VIEW

ActivityClass:   com.google.android.maps.MapsActivity

ActivityPackage:   com.google.android.apps.maps

Un cop fet el disseny de la interfície gràfica, serà necessari establir la lògica de l'APP. Per fer-ho caldrà accedir a l’espai de blocs d'APP Inventor per allí treballar amb els elements que la conformen.

Desenvolupament dels blocs

Un cop fet el disseny de la interfície gràfica, serà necessari establir la lògica de l'APP. Per fer-ho caldrà accedir a l’espai de blocs d'APP Inventor per allí treballar amb els elements que la conformen.

En l’aplicació caldrà desenvolupar tres funcions bàsiques, la primera s’executa quan l’aplicació s’inicia i en aquesta mostrarem per pantalla la longitud, la latitud i l’adreça actual del sensor GPS si és que aquest ja s’ha ubicat. En cas contrari, ens mostrarà un 0 en la longitud i en la latitud i un missatge en l’espai destinat a l’adreça. El codi de blocs que es correspondrà serà el que segueix a continuació.

Com que la posició del dispositiu mai és la mateixa i canvia constantment, serà necessari actualitzar la informació que es mostra per pantalla. Per a aquesta finalitat s’emprarà l’esdeveniment que s’activa cada cop que una nova ubicació és detectada pel dispositiu. L'interval que s’ha establert en l’element LocationSensor és la freqüència que s’utilitza per comprovar aquests canvis. El codi de blocs que es correspondrà al control d’aquest esdeveniment és el que segueix a continuació.

Finalment només queda afegir la funcionalitat al botó que ens mostra per pantalla el mapa amb la ubicació actual de l’usuari. Per fer-ho caldrà fer una crida a l'aplicació de Google Maps que es troba preinstal·lada en els dispositius Android i per comunicar-nos amb ella farem servir el ActivityStarter creat anteriorment. Caldrà iniciar-lo passant-li per paràmetres la latitud i la longitud actual obtinguda pel sensor GPS. El codi de blocs corresponent a aquest botó és el que segueix a continuació.