PROGRAMMAZIONE DI SISTEMI MOBILI (2° MODULO)
cod. 1006704

Anno accademico 2022/23
3° anno di corso - Secondo semestre
Docente
- Simone CIRANI
Settore scientifico disciplinare
Sistemi di elaborazione delle informazioni (ING-INF/05)
Field
"altre conoscenze utili per l'inserimento nel mondo del lavoro"
Tipologia attività formativa
Altro
24 ore
di attività frontali
3 crediti
sede:
insegnamento
in

Modulo dell'insegnamento integrato: PROGRAMMAZIONE DI SISTEMI MOBILI

Obiettivi formativi


Introduzione allo sviluppo su piattoforme mobili.
Architettura delle piattaforme mobili e componenti chiave.
Introduzione alla piattaforma Android, Android SDK e tool di sviluppo.

Prerequisiti


Prerequisiti:
- Programmazione di base (algoritmi e strutture dati)
Le seguenti voci sono fortemente consigliate:
- Esperienza con la programmazione orientata agli oggetti
- Design pattern

Contenuti dell'insegnamento


La finalità del corso è quella di affrontare i principi di base per lo sviluppo su piattaforme mobili di ultima generazione.
In particolare verrà fornita allo studente la capacità di comprendere:
- i principi e gli aspetti chiave della programmazione in ambiente mobile
- le caratteristiche delle due principali piattaforme principali per smartphone e tablet: Android e iOS.

Lo studente imparerà ad applicare tali competenze e sarà capace di programmare semplici applicazioni su smartphone in ambiente iOS ed Android.

Programma esteso


- La piattaforma Android
Introduzione ad activity, service, intent, MVC e interfacce utente

- Interfaccia utente grafica Android 1
Linear Layout, Relative Layout, Table Layout, Grid View, Tab Layout, List View, Custom List View
Element, Fragments

- utente grafico Android Interfaccia 2
Application Menu, ActionBar, Handling Actions with the ActionBar, Navigation with the ActionBar, ActionBar & Tabs, View Pager, Action Bar & View Pager

- Interfaccia utente grafica Android 3
Toast Notifications, Dialogs, WebView, Web Client / Web Chrome Client, Load Local Web Content,
WebView Javascript Interface, Supporting Multiple Screens

- Posizione e mappe
Introduzione a GPS, Servizi basati sulla posizione, Android e location service, Location service, Modello di applicazione LBS, API Android v2 di Google Maps, Configurazione, MapFragment, Marker, Eventi, Geocoder, applicazione mappa e navigatore

- Data Persistence
Shared Preferences, Internal Storage, External Storage, JSON Appendix, SQLite Database

- Concorrenza
Concorrenza in Java, concorrenza e interfaccia utente, concorrenza e Android, Handler, AsyncTask, Status Bar Notification

- Background Services
Android Service, Service Life Cycle, Unbound Service, Bound Service, Intent & Intent Filter ,
Broadcast Receiver

- Networking
Android e Networking, HTTP,Connectivity Manager,WifiManager,TelephonyManager, Bluetooth

- Sensori e sensori di gestione dei media
Sensors: Introduzione,Framework,Android; Multimedia:Framework,Fotocamera

Bibliografia


"Learning Android" by Marko Gargenta, Masumi Nakamura
O'Reilly Media.

"Programming Android: Java Programming for the New Generation of Mobile Devices"
by Zigurd Mednieks, Laird Dornin, G. Blake Meike, and Masumi Nakamura
O'Reilly Media.

"Android Wireless Application Development", Second Edition
by Lauren Darcey and Shane Conder
Addison Wesley.

Metodi didattici


Didattica frontale ed esercitazioni.

Modalità verifica apprendimento


Progetti individuali di fine corso per piattaforme Android ed iOS.

Altre informazioni

- - -