Programmazione in ambiente



Documenti analoghi
Tecniche di progettazione e sviluppo di applicazioni mobile

Sistemi Mobili e Wireless Android Primi passi

L ambiente di sviluppo Android Studio

Basi Android. Android si definisce open. Con8ene tecnologie open source. Il codice di Android è open. Licenza Open Source Apache 2.

MagiCum S.r.l. Progetto Inno-School

Android world. Sviluppare app per Android. Un insieme di software per dispositivi mobili (smartphone, tablet, portatili...)

Istruzioni per l installazione del software per gli esami ICoNExam (Aggiornate al 15/01/2014)

Introduzione all uso di Eclipse

Tale attività non è descritta in questa dispensa

11/02/2015 MANUALE DI INSTALLAZIONE DELL APPLICAZIONE DESKTOP TELEMATICO VERSIONE 1.0

Android. Implementare una interfaccia utente

INTRODUZIONE ALLE PIATTAFORME

Android. Android. Sviluppo di applicazioni. Dalvik 19/03/2011. A. Ferrari

ANDROID 4.2 JELLY BEAN Installazione e configurazione dell ambiente

Lezione 1 Primi passi con Android

Sviluppo su Android. Linux Day Torino 2010

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011

Indice: Introduzione 1 Strumenti di lavoro 2 Istallare Eclipse e SDK 3 Istallare l ADT in eclipse 4. Powered by: Vincenzo Acinapura

Corso App modulo Android. Antonio Gallo

L APP PER IPHONE E ANDROID

PORTALE CLIENTI Manuale utente

Configuration Managment Configurare EC2 su AWS. Tutorial. Configuration Managment. Configurare il servizio EC2 su AWS. Pagina 1

Corso Eclipse. Prerequisiti. 1 Introduzione

Corso Android New Edition Corso Online Programmatore Android New Edition

Installazione e caratteristiche generali 1

ACQUISTI MASSIVI SU SCUOLABOOK

Corso Programmazione Java ed Android

Lezione 1 Primi passi con Android

Corso Corso di di programmazione di di sistemi mobile 1 1. Android Laboratorio. Primo Progetto, Toast

E possibile modificare la lingua dei testi dell interfaccia utente, se in inglese o in italiano, dal menu [Tools

Assistenza Utente firmatario

01/05/2013 Istruzioni per l installazione

Come usare P-touch Transfer Manager

Corso Programmazione Android

Il Processo Civile Telematico e il Consulente Tecnico d Ufficio (C.T.U.) Uno schema operativo verso l invio telematico della C.T.U.

e/fiscali - Rel e/fiscali Installazione

Direzione Centrale per le Politiche dell Immigrazione e dell Asilo

MOBILE WEB DESIGN TUTORIAL ANDROID METAIO AUGMENTED REALITY

Integrazione InfiniteCRM - MailUp

Il web server Apache Lezione n. 3. Introduzione

FIRMA DIGITALE RETAIL

PRODUZIONE PAGELLE IN FORMATO PDF

Guida alla registrazione on-line di un DataLogger

Procedura installazione del software per la visualizzazione del fascicolo sanitario elettronico

ALTRO. v (Aprile 2015)

Android development. Sviluppo di Mobile Apps sul sistema operativo di Google

Android con App Inventor

hiclot Manuale utente del software

PIATTAFORMA DOCUMENTALE CRG

ANDROID. Domenico Talia. Università della Calabria.

Cliens Redigo Versione Aggiornamento al manuale.

SOMMARIO... 3 INTRODUZIONE...

Installazione del Software. per lo Sviluppo di Applicazioni Java

Procedura SMS. Manuale Utente

Programmazione Android

Progetto SOLE Sanità OnLinE

I s t r u z i o n i o p e r a t i v e. S t a z i o n e A p p a l t a n t e. S i. C e. A n t.

NOTE OPERATIVE. Prodotto Inaz Download Manager. Release 1.3.0

Programmazione Android. Luca Morettoni

Application Server per sviluppare applicazioni Java Enterprise

Guida all uso dell ambiente di sviluppo 1 integrato o IDE. JCreator LE 4.50

Manuale Utente Prerequisiti per DigitalSign Lite Sistema Operativo Linux a 64 bit

ALTRO. v (Maggio 2015)

MANUALE MOODLE STUDENTI. Accesso al Materiale Didattico

BDCC : Guida rapida all utilizzo

Raggruppamenti Conti Movimenti

Programmazione Fondi Strutturali 2007/2013 P.O.N. FSE A.S. 2013/2014 SCHEDA PROGETTUALE MODULO. Obiettivo: C Azione: 1 Riferimento interno:

Manuale di utilizzo del servizio in cloud

Usare MUD2010 con Windows 7

Configurare TPTP in Eclipse e testare un applicazione

Guida rapida alla Webconferencing

The Enterprise Service BUS. Manuale utente - VulCon

Procedure di utilizzo e di descrizione applicativa

Distribuire Applicazioni virtualizzate con APP-V

SERVIZIO TELEMATICO ENTRATEL. Applicazione Autentica-Apri Multifile

PRE-REQUISITI PER L'USO DELLO STRUMENTO

Gruppo Buffetti S.p.A. Via F. Antolisei Roma

14/10/2015 ALESSANDRAZULLO SVILUPPO DI APPLICAZIONI ANDROID- VERSIONE 1. Alessandra Zullo

2. CONFIGURAZIONE DEL PROGRAMMA ITER PER LA COMPILAZIONE DELLA PRATICA

Software di base. Corso di Fondamenti di Informatica


Bookenberg non è un softwere ma una piattaforma online, quindi:

MANUALE D USO MANUALE D USO

Scuola Professionale e Filologica Geom. F.Borgogna Vercelli

Provincia di Siena UFFICIO TURISMO. Invio telematico delle comunicazioni relative alle Agenzie di Viaggio

Istruzioni per la configurazione di IziOzi

Manuale di installazione per scarico referti FSE (Fascicolo Sanitario Elettronico)

FASI DA ESEGUIRE ON-LINE

MANUALE D USO MANUALE D USO

Sistema Banca dati e Repertorio dei dispositivi medici Notifiche multiple di DM simili

Ingegneria del Software 1: Eclipse

Ambienti di Sviluppo

D R O P B O X COS È DROPBOX:

ISTRUZIONI PER LA GENERAZIONE DELLA FATTURA ELETTRONICA PER LA PUBBLICA AMMINISTRAZIONE

Panoramica: che cosa è necessario

Transcript:

Università Politecnica delle Marche Dipartimento di Ingegneria dell Informazione Programmazione in ambiente Android Laura Montanini - laura.montanini@univpm.it Corso di Tecnologie per le TLC 2013-2014 1

Èunsistemaoperativoopensourcebasatosulkernel open source sul Linux e progettato principalmente per dispositivi mobili dotati di touchscreen (ad es. smartphone e tablet) 2003: Viene fondata Android Inc. 2005: Google acquista l azienda 2007: Presentazione ufficiale al pubblico da parte della OHA (Open Handset Alliance) 2008:HTCDreamèilprimodispositivoAndroidsulmercato 2

Release Android 2011 2011 2012 31 Ottobre 2013 2010 2010 2009 2009 2009 Sono in ordine alfabetico Hannoilnomediundolciume Ogni versione porta qualcosa di nuovo 3

Vantaggi È ampiamente diffuso Progettato per smartphone e tablet, ma utilizzabile anche su altri dispositivi elettronici: portatili, netbook, ebook reader, ecc. Permette di modificare e distribuire il software liberamente Dispone di un SDK per facilitare lo sviluppatore Sfrutta il linguaggio Java Fornisce una ricca documentazione reperibile on-line Dispone di una vasta comunità di sviluppatori con cui confrontarsi 4

Architettura 5

Android SDK Android mette a disposizione un apposito kit di sviluppo completo di emulatore, librerie e documentazione: l Android SDK. NB: poiché Android si programma in Java, il sistema deve disporre di un Java SDK (JDK): senza un JDK non è possibile compilare il codice! 6

ADT per Eclipse Android mette a disposizione dell utente un pacchetto già configurato chiamato: ADT(Android Developer Tools) ÈunpluginperEclipse Può essere scaricato all indirizzo: http://developer.android.com/sdk/index.html Contiene: Eclipse + ADT plugin Android SDK Tools le ultime versioni di Android gli ultimi sistemi di immagini per gli emulatori 7

Android Virtual Device Il kit di sviluppo comprende l emulatore(android Virtual Device) Possiamo creare e configurare quanti dispositivi virtuali vogliamo. Possiamo avviare due o più dispositivi virtuali insieme (ad esempio per testare un applicazione che fa interagire più smartphone). 8

Configurare un AVD Dalla toolbar clicchiamo su Android Virtual Device Manager La finestra presenta la lista dei dispositivi virtuali configurati (inizialmente vuota) e la maschera per la creazione di una nuova istanza Clicchiamo su Device Definitions, selezioniamo un dispositivo, e poi clicchiamo su Create AVD Levocidacompilaresono: Name: il nome del dispositivo virtuale(ad esempio Android1 ) Target: la tipologia del dispositivo (se scegliamo Android 1.5 creeremo un dispositivo virtuale compatibile con la versione 1.5 delle specifiche Android) SD Card: possiamo dotare il dispositivo virtuale di una scheda di memoria virtuale Skin: possiamo scegliere la risoluzione del dispositivo. Le scelte possibili sono HVGA-P (480x320), HVGA-L (320x480), QVGA-P (320x240) e QVGAL (240x320). 9

Configurare un AVD Dalla toolbar clicchiamo su Android Virtual Device Manager 10

Lanciare un AVD Una volta creato l AVD, dalla scheda Android Virtual Devices, lo selezioniamo e clicchiamo su Start 11

Eseguire un app In fase di sviluppo, esistono due modi per eseguire la propria app: Usando l AVD: Permette di simulare il funzionamento su differenti dispositivi È oneroso dal punto di vista computazionale Usando il proprio dispositivo Android Non è necessario possedere un computer potente Permette di verificare il funzionamento solo sul dispositivo scelto In Windows necessita l installazione dei driver del dispositivo 12

Java o non Java? Il linguaggio utilizzato da Android si basa sul linguaggio Java, ma non è Java! Quasi la totalità delle librerie utilizzate sono librerie standard di Java ad eccezione di quelle grafiche La definizione dell'interfaccia grafica utilizza un approccio dichiarativo come nella maggior parte delle attuali piattaforme di sviluppo Non viene usata la Java Virtual Machine 13

Dalvik Virtual Machine Per ottimizzare al massimo l'utilizzo delle risorse dei dispositivi, è stata adottata una diversa Virtual Machine(VM) chiamata Dalvik È una VM ottimizzata per l'esecuzione di applicazioni in dispositivi a risorse limitate Esegue codice contenuto in file.dex (Dalvik EXecutable) ottenuti, in fase di building, a partire da file.classdibytecodejava 14

I mattoni fondamentali di un app 15

I mattoni fondamentali di un app Asecondadiquelchesiintendefareèdisponibileun diverso modello di applicazione. Android fornisce quattro mattoni di base: Attività: interagisce con l utente utilizzando lo schermo e i dispositivi di input messi a disposizione dallo smartphone èilmodellopiùdiffusoinandroid estende la classe base android.app.activity Servizio: gira in sottofondo e non interagisce direttamente con l utente adesempiopuòriprodurreunbranomp3 estende la classe android.app.service 16

I mattoni fondamentali di un app Broadcast Receiver: utilizzato quando si intende intercettare un particolare evento adesempiolosipuòutilizzaresesivuolecompiereun azione quando si scatta una foto o quando parte la segnalazione di batteria scarica estende la classe android. Content. BroadcastReceiver Content Provider: utilizzato per accedere a dati e informazioni costituisce un canale di comunicazione tra le differenti applicazioni installate nel sistema Estende la classe astratta android.content.contentprovider. 17

Hello, World! Creiamo la nostra prima Activity! Dalla toolbar: New > Android > Android Application Project Impostiamoilnome,illivelloAPIminimoequellotarget 18

Hello, World! Configuriamo l icona di lancio, impostiamo, per iniziare, una Blank Activity e ne scegliamo il nome 19

Hello, World! Eclipse crea in maniera automatica l applicazione Hello, World! 20

Hello, World! Eclipse crea in maniera automatica l applicazione Hello, World! Struttura dei progetti presenti nel workspace 21

Hello, World! Eclipse crea in maniera automatica l applicazione Hello, World! Classi e file aperti 22

Hello, World! Eclipse crea in maniera automatica l applicazione Hello, World! Gerarchia di pacchetti e classi del progetto, con relativi attributi e metodi 23

Hello, World! Eclipse crea in maniera automatica l applicazione Hello, World! Messaggi di errore, logcat, warning ed eccezioni 24

Il ciclo di vita di un Activity 25

Il ciclo di vita di un Activity Quando si crea un istanza di un activity, il sistema richiama in sequenza queste tre callback: solo a quel punto l utente può interagire con l activity 3 2 1 26

Il file Manifest Per ogni progetto deve essere redatto un file AndroidManifest.xml Dichiara: le componenti(<activity>, <service>, <receiver>, <provider>) ipermessi illivellominimodiapirichiesto le caratteristiche hardware e software necessarie (ad es. fotocamera, bluetooth, ecc.) le librerie esterne a cui l'applicazione deve essere linkata (ad es. la libreria di Google Maps) 27

L interfaccia utente Usa una gerarchia di oggetti delle classi View e ViewGroup View:UIwidgetcomebottonioareeditesto ViewGroup: contenitori invisibili che definiscono come gli elementi figli devono essere posizionati 28

L interfaccia utente Elementi derivati dalla classe ViewGroup: i layout LinearLayout RelativeLayout WebView Elementi derivati dalla classe View: bottoni, aree di testo, radio button, number picker, check box, progress bar, ecc. Button RadioButton CheckBox NumberPicker 29

Il layout Definisce la struttura visiva dell interfaccia utente È possibile dichiarare il layout in due modi: Dichiarare gli elementi grafici nel file.xml Instanziare gli elementi a runtime, creando oggetti delle classi View e ViewGroup via codice 30

Il layout Posizione del file.xml 31

Selettore del dispositivo e della risoluzione dello schermo Il layout 32

Il layout Selettore dell orientazione dello schermo 33

Palette per la scelta di layout ed elementi Il layout 34

Il layout Struttura gerarchica di layout ed elementi 35

Il layout Schede per passare dall editor grafico all editor di testo xml 36

Il layout Editor di testo xml 37

Hello, World SMS! Creiamoun applicazione che invii il messaggio Hello, World! via SMS al numero desiderato Aspetti interessanti: Richiesta di permessi Gestione di bottoni ed elementi grafici Utilizzo delle funzionalità di invio degli SMS 38

Hello, World SMS! La richiesta dei permessi: 39

Hello, World SMS! La realizzazione del layout: 40

Hello, World SMS! La realizzazione del layout: 41

Hello, World SMS! La realizzazione del layout: 42

Hello, World SMS! La realizzazione del layout: 43

Hello, World SMS! La realizzazione del layout: 44

Hello, World SMS! La realizzazione del layout: 45

Hello, World SMS! La gestione di bottoni ed elementi grafici: Si importano dalla libreria standard di Android le classi necessarie alla gestione degli elementi creati Si associa agli elementi definiti nel file di layout un oggetto della relativa classe 46

Hello, World SMS! La gestione dell evento click: Si assegna al bottone un nuovo gestore dell evento click chiamato OnClickListener Si effettua l override del metodo onclick che corrisponde all evento pressione del bottone 47

Hello, World SMS! L uso delle classi per l invio di SMS: Creazione di un SMS manager Invio del messaggio Hello, World! al numero composto 48

I pacchetti APK Le applicazioni Android sono distribuite sotto forma di file APK (Android Package) Contengono: eseguibili in formato DEX, eventuali risorse associate e i descrittori che definiscono il contenuto del pacchetto È necessario apporre una firma digitale Non è necessario che una certification authority riconosca la firma: è possibile usare un certificato fatto in casa 49

Creare la firma digitale Dal menu contestuale del progetto cliccare su Export > Android > Export Android Application Le firme digitali vengono raccolte e conservate all interno di un keystore NB: è buona norma proteggerlo con una password nel caso il file ci venga rubato! Le firma digitale è caratterizzata da un nome (alias), da una password, da un tempo di validità e dai dati anagrafici del firmatario 50