Automatic message
Introduzione
Uno dei problemi maggiori riscontrati dalla nostra generazione, e non solo, è l’utilizzo smodato dello smartphone, da cui non ci si riesce a staccare nemmeno durante la guida. Infatti, è in continuo aumento il numero degli incidenti stradali causati dalla distrazione dall’uso del cellulare. Per questo motivo abbiamo pensato ad un’app che possa limitarne l’uso, aiutando il conducente a rispondere automaticamente ai messaggi mentre è impegnato a guidare. Per realizzare quest’applicazione abbiamo utilizzato un programma chiamato MIT App Inventor.
Materiale utilizzato
MIT App Inventor è un ambiente di sviluppo per applicazioni Android, creato da Google, e ora di proprietà del Massachusetts Institute of Technology. È stato creato per persone che volessero programmare semplici applicazioni per Android ad uso personale, ma eventualmente possono anche essere pubblicate sullo store di Google. L’interfaccia di App-Inventor è costituita dalla Main Bar, che è la barra principale di gestione del progetto, dalla quale è possibile gestire gli screen (aggiungere nuove viste o eliminare viste esistenti), effettuare tutte le operazioni di project management, eseguire la build di una app ed altro ancora. Abbiamo poi due schermate principali chiamate Designed View e Block View: nella prima si sviluppa il layout dell’app, ossia si costruisce la sua interfaccia grafica, mentre nella seconda si inserisce il codice vero e proprio dove è possibile trascinare i componenti prelevati dalla Components Palette. Quest’ultima è la palette contenente i componenti che permettono la costruzione dell’interfaccia grafica e del layout, ma anche di gestire tutte le periferiche presenti sul nostro Smartphone; inoltre, consentono di eseguire operazioni avanzate, come ad esempio l’interfacciamento con i social, la gestione dello storage e della connettività. Le sue componenti sono:
- Blocks Palette, la quale contiene nella prima parte, tutti i blocchi base, come i blocchi logico/matematici, i blocchi per il controllo di esecuzione, le varie costanti e le varie operazioni di base che sono eseguibili sui blocchi, mentre nella seconda parte, i blocchi specifici dei vari componenti del progetto e tale sezione si popola man mano che i componenti vengono aggiunti alla View lato design;
- Blocks Viewer, questa è la sezione nella quale viene creato il codice grafico, trascinando all’interno di essa i vari blocchi presenti della Blocks Palette; per impedire errori nelle connessioni i blocchi in App Inventor sono sagomati a forma di puzzle e si possono incastrare tra di loro solo se risultano compatibili.
Realizzazione dell’app
La nostra app invia un messaggio in automatico quando ne riceve uno. La Designed View del nostro progetto è costituita da sette componenti visibili e tre non visibili. Quelle visibili sono:
- Screen è il componente nel quale vengono visualizzate informazioni e immagini in un determinato momento. Ruotando il dispositivo, lo screen può ruotare rendendosi;
- HorizonalArrangement è un elemento di formattazione con cui si posizionano i componenti che devono essere visualizzati orizzontalmente da sinistra a destra;
- Label è l’elemento in cui viene visualizzato il testo, che viene specificato tramite la proprietà Text. Nel nostro caso è il messaggio automatico: “Sono occupato, ti chiamo dopo”;
- Button è un pulsante con la capacità di rilevare il click degli utenti. Nella nostra app serve per inserire una risposta alternativa al messaggio preimpostato;
- Image attraverso cui è possibile rappresentare immagini. Nel nostro caso abbiamo raffigurato una matita;
- CheckBox è una casella di controllo che genera un evento quando l’utente fa click su di esso. Qui ha la funzione di abilitare la lettura vocale del messaggio ricevuto.
- SMS1 che gestisce l’invio e la recezione dei messaggi di testo;
- TextToSpeech1 che trasforma un testo in un parlato attraverso un sintetizzatore vocale;
- TinyDB1 che memorizza (e leggere) dati all'interno di un database (estremamente semplificato) mediante un meccanismo di tags.
La Block View del nostro progetto è composta da quattro blocchi:
• Nel primo blocco viene detto all’applicazione che quando il Button viene cliccato deve comparire una casella di testo in cui inserire la risposta da inviare;
• Nel secondo blocco viene detto all’applicazione di inviare il messaggio impostato ogni volta che se ne riceve uno e se spuntata la CheckBox leggere ad alta voce il messaggio;
• Nel terzo blocco l’applicazione memorizza il messaggio scritto nella casella di testo una volta cliccato il Button invia;
• Nel quarto blocco l’applicazione memorizza in un database il testo default, ovvero “Sono occupato, ti chiamo dopo”, in assenza di interventi.
Conclusioni
Questo progetto ci ha permesso di avvicinarci al mondo della programmazione. Abbiamo testato la nostra app e funziona come atteso.
Iacovelli Martina - Cimbalo Federica - Nardelli Salvatore - Viscardi Carla