La piattaforma Android

Save this PDF as:
 WORD  PNG  TXT  JPG

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "La piattaforma Android"

Transcript

1 Sistemi Embedded Reti e Servizi Mobili La piattaforma Android Raffaele Di Natale

2 Bibliografia Free Getting Started: Books Android 4 Guida per lo Sviluppatore, APOGEO Beginning Android 4, APRESS. Advanced Android Development, MURPHY 2

3 Agenda Introduzione ad Android: contesto, storia e confronto con altre piattaforme, caratteristiche. Architettura: Applicazioni, Application Framework, Librerie, Android Runtime,... ART: confronto con Dalvik Virtual Machine, gestione della memoria, bytecode Strumenti di Sviluppo: Android Studio, SDK, ADT, Emulator. Esempi: sviluppo e debug applicazioni Android 3

4 Android Introduzione ad Android SEMM 2012

5 La rivoluzione dei dispositivi mobili 1/2 Il dispositivo che fino a qualche anno fa chiamavamo cellulare oggi è a tutti gli effetti un Personal Computer. La vera rivoluzione dal punto di vista degli utenti consiste nel fatto che uno smartphone è molto più Personal di un PC perché ci segue ovunque. Gli sviluppatori possono finalmente creare applicazioni che non devono fare più i conti con il concetto di "risorse limitate". 2 SEMM 2012

6 La rivoluzione dei dispositivi mobili 2/2 Dal punto di vista dei produttori la rivoluzione consiste nel fatto che in passato ogni produttore di dispositivi mobili ha realizzato un proprio sistema operativo, ambiente di sviluppo, linguaggio, tool: nessuno si è affermato come standard. Il progetto Android nasce quindi da una esigenza di standardizzazione su iniziativa di Google. 3

7 Cosa è Android? Android è la prima piattaforma software open per dispositivi mobile Android è uno stack software per dispositivi mobili ed include un sistema operativo, un middleware ed un insieme di applicazioni chiave. Android è stato sviluppato da Google Inc. e da un consorzio di aziende chiamato Open Handset Alliance 4 SEMM 2012

8 Perchè Open? E' open perchè: Utilizza tecnologie open (linux kernel 2.6 e 3.x dalla 4.0) Le librerie e le API utilizzate per realizzare Android sono le stesse che possiamo usare per le nostre applicazioni Il kernel linux è rilasciato sotto GNU General Personal Licence (GPL). La piattaforma Android è rilasciata sotto Open Source Apache Software Licence 2.0 (ASL). 5 SEMM 2012

9 Open Handset Alliance Operatori mobili: Telecom, Vodafone, T-Mobile... Produttori di chip: Arm, Intel, NVIDIA... Produttori di telefonini: Toshiba, HTC, Acer, Sony,... Aziende sviluppatrici di software: Google, ebay, Omron,... Aziende di commercializzazione: Accenture, Aplix... 6 SEMM 2012

10 Un po' di storia 7 SEMM 2012

11 G1 T-Mobile Processor Qualcomm MSM7201A, 528 MHz RAM: 192 MB Storage: Flash Memory 256 MB Display 3.2'' Supporto 3G UMTS/HSDPA a 7,2 Mbps 8 SEMM 2012

12 Platforms 9 SEMM 2012

13 Innovazioni principali 10 SEMM 2012

14 Distribuzione Attuale 11 SEMM 2012

15 Requisiti Minimi 1/2 I requisiti minimi di ogni versione rilasciata, sono definiti mediante l'android Compatibility Program che consiste di tre componenti chiave: Il codice sorgente dello stack software Android Il Compatibility Definition Document, che descrive le specifiche di compatibilità La Compatibility Test Suite, che rappresenta il "meccanismo" di compatibilità Il più recente ACP si riferisce alla SEMM 2012

16 Requisiti Minimi 2/2 Per Android 2.2 alcuni dei requisiti minimi sono: Memoria >= 128MB (kernel) + 150MB (/data) + 1GB (Application/SD Card) FotoCamera >= 2 megapixel Display >= 2,5'' Per Android 4.0 alcuni dei requisiti minimi sono: Memoria >= 340MB (kernel) + 350MB (/data) + 1GB (Application(SD Card) FotoCamera >= 2 megapixel Display >= 2,5'' 13 SEMM 2012

17 Codice Sorgente di Android Il codice sorgente di Android può essere scaricato seguendo le indicazioni descritte in La versione di Android più recente per la quale è disponibile il codice sorgente è la (API level 22) 14 SEMM 2012

18 Caratteristiche principali 1/3 Android include un application framework che permette il riutilizzo dei componenti sviluppati. La Dalvik Virtual Machine ed il nuovo Android RunTime sono ottimizzati per l'esecuzione su dispositivi mobili. Il browser web integrato è basato sul software open-source WebKit. La grafica 2D è basata su una libreria appositamente sviluppata. 15 SEMM 2012

19 Caratteristiche principali (2/3) La grafica 3D è basata sulla specifica OpenGL ES 1.0 e l'accelerazione hardware è opzionale. Per la persistenza strutturata dei dati si usa SQLite. Sono supportati i più comuni formati audio e video (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF). 16 SEMM 2012

20 Caratteristiche principali (3/3) Può supportare GSM, EDGE (2.5G), UMTS (3G), LTE(4G), Bluetooth/BTLE (Low Energy), Wi-Fi, NFC Prevede anche il supporto per fotocamera, GPS, bussola e accelerometro, sensore prossimità, ambient light sensor, finger print scanner Fornisce un ricco ambiente integrato di sviluppo che include un emulatore, strumenti per il debugging e il profiling di memoria e prestazioni, ed più ambiendi di svilluppo specifici. 17 SEMM 2012

21 Architettura di Android 18 SEMM 2012

22 Componenti del sistema I componenti mostrati nel precedente schema dell'architettura verranno ora analizzati uno ad uno: Applicazioni Application Framework Librerie Android Runtime Kernel Linux 19 SEMM 2012

23 Applicazioni Android dispone di base di un insieme di applicazioni che includono un client , un programma per la gestione degli SMS, agenda, rubrica, mappe, un browser web e altre. Le applicazioni vengono scritte utilizzando (principalmente) il linguaggio di programmazione Java. 20 SEMM 2012

24 Application Framework Gli sviluppatori hanno pieno accesso alle stesse API del framework che vengono utilizzate dalle applicazioni di base. L'architettura delle applicazioni è progettata per semplificare il riutilizzo dei componenti. Ogni applicazione può pubblicare le sue capabilities e le altre possono farne uso. Questo stesso meccanismo fa sì che l'utente possa rimpiazzare alcuni componenti. 21 SEMM 2012

25 Servizi dell'application Framework (1/2) L'Application Framework fornisce alle applicazioni i seguenti servizi: Un insieme di Views completo ed estensibile che include liste, griglie, text-box, pulsanti ed un browser web integrato nell'applicazione. I Content Provider permettono alle applicazioni di accedere ai dati di altre applicazioni (es. la rubrica) o di mettere in condivisione i loro stessi dati. 22 SEMM 2012

26 Servizi dell'application Framework (2/2) Un Resource Manager che fornisce l'accesso alle risorse esterne al codice, come stringhe localizzate, grafici e file di layout. Un Notification Manager permette a tutte le applicazioni di mostrare avvisi personalizzati sulla barra di stato. Un Activity Manager che gestisce il ciclo di vita delle applicazioni. 23 SEMM 2012

27 Librerie Native (1/4) Sono librerie scritte in C/C++ che rappresentano il core di Android e sono usate dai vari componenti del sistema. Le capabilities di queste librerie sono esposte agli sviluppatori sempre attraverso l'application Framework. La libreria più importante è senz'altro la Standard C Library (libc) derivata dalla sua implementazione BSD e ottimizzata per l'esecuzione su dispositivi embedded. 24 SEMM 2012

28 Librerie Native (2/4) Il Media Framework (librerie multimediali) sono basate su OpenCORE di PacketVideo e supportano la riproduzione e la registrazione di vari formati audio/video. Il Surface Manager gestisce l'accesso al sottosistema di visualizzazione su schermo e senza sforzo da parte del programmatore compone livelli di grafica 2D e 3D provenienti da varie applicazioni. 25 SEMM 2012

29 Librerie Native (3/4) WebKit (LibWebCore) è il motore di browser alla base sia del browser principale di Android che delle web view integrate nelle applicazioni. SGL è l'engine grafico 2D. Le librerie 3D implementano la API OpenGL ES 1.0 e 2.0 e possono utilizzare sia l'accelerazione hardware (se disponibile) sia una implementazione software ottimizzata. 26 SEMM 2012

30 Librerie Native (4/4) La liberia FreeType fornisce il rendering per i font bitmap e vettoriali SQLite è un potente e leggero motore di database relazionale disponibile per tutte le applicazioni, per la memorizzazione di qualsiasi tipo di dato strutturato SSL è la libreria per la gestione dei Secure Socket Layer. 27 SEMM 2012

31 Android Runtime L'Android Runtime si compone delle Core Libraries e dalla Dalvik Virtual Machine. A partire dalla versione 4.4 è stato introdotta la nuova ART VM che ha sostituito definitivamente la DVM a partire dalla 5.0. Le Core Libraries forniscono molte delle funzionalità delle analoghe librerie disponibili per il linguaggio di programmazione Java. Ogni applicazione Android gira in un suo proprio processo, con la sua istanza della ART Virtual Machine (VM). 28 SEMM 2012

32 Core Libraries Rappresentano un insieme di librerie molto vicine alla Dalvik Virtual Machine ed estratte in parte dal progetto Apache Harmony (2007) ed in parte appositamente adattate Sono distribuite in tre categorie: DalvikVM specific libraries (System Info, Debugging) Java Compatibility libraries (Base and utility classes) Thirty Part Libraries (Apache HttpClient 4.0) 29 SEMM 2012

33 Dalvik VM (1/2) La Dalvik VM è stata ottimizzata in modo che uno stesso dispositivo embedded sia in grado di eseguirne più istanze in modo efficiente. La Dalvik VM esegue un bytecode incompatibile con quello della Java VM e che viene detto Dalvik Executable (.dex), ottimizzato per avere una occupazione di memoria minima. La Dalvik VM è register-based (mentre la Java VM è stack-based). 30 SEMM 2012

34 Dalvik VM (2/2) Il ciclo di sviluppo prevede che una applicazione venga dapprima sviluppata in Java, e successivamente un tool (dx) converte i file.class, ottenuti dalla normale compilazione java, in file ottimizzati.dex 31 SEMM 2012

35 Android Runtime ART La Dalvik utilizza un compilatore di tipo JIT (just in time) che interpreta l applicazione al momento della sua esecuzione. ART usa un approccio differente, chiamato AOT (ahead of time), compilando l'app in codice nativo al momento dell'installazione e velocizzandone l esecuzione. 32 SEMM 2012

36 Android Runtime ART Dal punto di vista del programmatore non ci sono differenze in quanto ART continua ad usare il formato DEX. 33 SEMM 2012

37 ART Miglioramento Performance 34 SEMM 2012

38 ART Caratteristiche 1/2 ART ha ottimizzato il garbage collector (GC). Nella DVM si hanno due pause per un totale di circa 10ms per ogni GC In ART, siamo al di sotto di 2ms. Un ciclo di GC completo sarà eseguito solo quando il telefono è non utilizzato. Si tratta di un enorme miglioramento per le applicazioni che necessitano di un uso massivo della memoria. 35 SEMM 2012

39 ART Caratteristiche 2/2 Le versioni future di ART includeranno un defrag della memoria che muoverà blocchi di memoria in blocchi contigui al fine di ridurre la frammentazione e la necessità di uccidere vecchie applicazioni per assegnare aree di memoria di grandi dimensioni. 36 SEMM 2012

40 Android is not GNU/Linux Android non ha nulla di una normale distribuzione GNU/Linux, a parte il kernel Linux. Per il resto non usa le stesse librerie e il modo di programmarlo è molto differente: le applicazioni vanno scritte in Java. Niente glibc, niente Xorg, niente GTK, niente Qt si tratta di un sistema operativo totalmente diverso da GNU/Linux. 37 SEMM 2012

41 Kernel Linux Dalla versione 4.0 Android si basa sul kernel Linux 3.x per i servizi di base come la sicurezza, la gestione della memoria, la gestione dei processi, lo stack di rete e il modello dei driver. Il kernel funge anche da livello di astrazione tra l'hardware e il resto dello stack software. In questo livello avviene la gestione dei driver dell'hardware (videocamera, display, memoria flash, la scheda wireless...) 38 SEMM 2012

42 Conclusioni In questa lezione abbiamo visto una prima panoramica di Android, le sue caratteristiche principali e le varie parti che compongono la sua architettura. 39 SEMM 2012

43 Android Piattaforme per Dispositivi Mobili

44 Piattaforme del passato Fino ai primi anni 90 non si può parlare di piattaforme ma di Sistemi Embedded 1996 Palm OS Windows CE 2000 Symbian Windows Pocket PC 2006 Java ME 2

45 Piattaforme attuali Attualmente le più diffuse piattaforme per dispositivi mobili sono: Windows Phone ios Android Blackberry 3

46 Mercato Italia

47 Blackberry I telefoni Blackberry di RIM (Research-In- Motion) sono prodotti diffusi da anni nell'ambito enterprise. Sono specializzati nella gestione della posta elettronica in modalità push. Sebbene siano stati considerati prodotti all'avanguardia, sono sempre stati utilizzati solo nell'ambito aziendale e non hanno quindi avuto una grande diffusione nel mercato consumer che garantisce i volumi più elevati. 5

48 Sistemi Operativi per Smartphone Di conseguenza nei prossimi anni la vera lotta tra i sistemi operativi per smartphone avverrà fra tre grandi concorrenti: Windows Phone, ios e Android. Dietro questi sistemi operativi si celano i colossi del mondo IT, ovvero Microsoft, Apple, Google, Samsung. 6

49 Confronto tra SO:strumenti di sviluppo Per tutte le piattaforme prese in considerazione l'sdk che permette lo sviluppo di applicazioni è liberamenente disponibile. Riguardo ai linguaggi di programmazione da adoperare, per Windows Mobile è possibile utilizzare indifferentemente C++, C# e VB.NET. Per ios si usa Objective-C. Per Android e BlackBerry si usa Java. 7

50 Nuove Piattaforme Mobile Open Source Linux based Open Source Linux based Closed Source, Cloud based Android Fork 8

51 Conclusioni In questa lezione abbiamo elencato le principali piattaforme alternative per lo sviluppo di applicazioni per terminali mobili. 9

52 Android Installare l'ambiente di sviluppo e utilizzare l'emulatore

53 Introduzione Per sviluppare una applicazione per Android è necessario scaricare Android Studio dal sito ufficiale. Android Studio contiene l'sdk Android. SDK sta per Software Development Kit e contiene una serie di tool ed un emulatore per testare le applicazioni create direttamente sul proprio PC. SEMM

54 Prerequisiti 03/2015 Prima di Installare Android Studio bisogna scaricare ed installare l'ultima versione del pacchetto Java JDK dal sito ufficiale di Oracle SEMM

55 Android Studio - Download *Disinstallare eventuali precedenti versioni di Android Studio. SEMM

56 Installazione: Problemi noti La documentazione di Google indica il fatto che in alcuni casi Android Studio non riesce ad individuare una installazione di JDK già presente (No JVM installation found.). Se ci si trova in questa condizione, è necessario impostare una variabile d'ambiente JAVA_HOME con la directory in cui è installato il JDK. SEMM

57 Installazione : Problemi noti Il tool di Intel che sfrutta Intel VT per velocizzare l esecuzione della VM del simulatore, può restituire un errore (lo vedrete evidenziato in rosso). SOLUZIONE: scaricare il tool nella versione corretta da all'indirizzo: SEMM

58 Primo avvio Al primo avvio, Android Studio chiede di reimportare le preferenze personali da una precedente installazione. Nel caso in cui si fosse effettuata una prima installazione, si potrà lasciare selezionata l'opzione I do not have a previous version of Android Studio or I do not want to import my settings. SEMM

59 Aggiornare l'sdk Mediante l'android SDK Manager (tools Android-SDK Manager) è possibile seguire gli aggiornamenti dell'sdk, nonchè installare esempi, documentazione e le importanti Google API. SEMM

60 Android Virtual Device Manger L'emulatore serve per provare le applicazioni Android in corso di sviluppo. Dalla barra degli strumenti di Android Studio si seleziona il pulsante AVD Manager. È possibile creare molteplici AVD Ciascun dispositivo virtuale può essere sfruttato per provare le applicazioni in corso di sviluppo utilizzando varie configurazioni hardware e software. SEMM

61 Emulatore 1/3 Scelta delle caratteristiche fisiche del dispositivo da emulare SEMM

62 Emulatore 2/3 Scelta della versione Android da installare nel dispositivo selezionato precedentemente. Se l'img del kernel non è stata scaricata dall'sdk manager è possibile farlo da questa schermata alla voce download. SEMM

63 Emulatore 3/3 Per utilizzare un dispositivo fisico seguire questa guida: SEMM

64 Emulatore avviato Il dispositivo virtuale si comporterà esattamente come un normale device Android SEMM

65 Conclusioni In questa lezione abbiamo visto come installare l'ide Android Studio e il Software Development Kit (SDK) ed utilizzare l'ambiente di emulazione. SEMM

66 Android Lezione n. 7: Sviluppo di una App Android

67 Introduzione Questa lezione mostra il ciclo di sviluppo tipico di una applicazione Android. Verrà mostrato come creare e compilare un nuovo progetto, e come eseguirlo nell'emulatore. Verrà mostrato il procedimento da usare con l'ide di sviluppo Android Studio. SEMM2013 2

68 Creare un progetto Android Per iniziare lo sviluppo di una nuova applicazione per Android bisogna creare un progetto e una configurazione di lancio. Per creare il progetto bisogna ovviamente disporre di Android Studio installato correttamente. SEMM2013 3

69 Nome del package Bisogna specificare il namespace sotto il quale si vuole che risieda il nostro codice sorgente, seguendo le stesse regole del linguaggio Java. Poiché è importante che nel sistema il nome del package sia unico rispetto a tutti quelli installati nel sistema, si usa un nome di package in stile nome di dominio (company domain). Ad esempio: it.android.corso. SEMM2013

70 Creare un progetto Android passo 1 Il progetto si crea selezionando nell'ordine File New Project. Successivamente dovranno essere definiti il project name, minima sdk supportata, l'activity name, application name ed il package name SEMM2013 5

71 Creare un progetto Android passo 2 SEMM2013 6

72 Creare un progetto Android passo 3 SEMM2013 7

73 Creare un progetto Eclipse passo 4 SEMM2013 8

74 Applicazione finale Una volta creata la nostra applicazione di prova ci ritroviamo di fronte all interfaccia di Android Studio che ricorda quella di IntelliJ Idea di JetBrains. SEMM2013 9

75 Avvio emulatore Avviamo l'emulatore creato nella in precedenza. Avviamo quindi Android AVD da menu: Tool Android AVD Manager SEMM

76 Interazione emulatore Android Studio Avviato l'emulatore alla voce Android vedremo alla voce Devices il nostro device e il relativo LOG utile per il debug dell'applicazione SEMM

77 Avvio dell'applicazione Avviamo la nostra prima applicazione cliccando su Run Run App e scegliamo come dispositivo il nostro simulatore. SEMM

78 Applicazione avviata Il simulatore non deve essere chiuso ad ogni avvio dell'applicazione. Avviato il simulatore, cliccando su Run Run App verrà eseguita la compilazione del progetto (solo in caso di modifiche) e l'installazione dell'applicazione nell'emulatore. SEMM

79 Vista Android La vista Android è abilitata di default e visualizza tutti i file di livello superiore. I moduli sono rappresentati da delle cartelle e contengono questi tre elementi fondamentali: manifests/ - Manifest files. java/ - Source files for the module. res/ - Resource files for the module. La vista progetto mostra una gerarchia che consente e mette in evidenza i file più usati durante lo sviluppo di applicazioni Android. Tuttavia, la struttura del progetto sul disco differisce da questa rappresentazione e mantiene la struttura di progetto tradizionale (vista project). SEMM

80 AndroidManifest.xml AndroidManifest.xml è il file di manifesto contenente le informazioni relative al progetto SEMM

81 MainActivity.java MainActivity.java è il file sorgente che conterrà l'activity specificata SEMM

82 Nome progetto e Activity Il nome del progetto e il nome dell'activity possono coincidere o meno. La differenza è che il progetto dà il nome alla directory che lo conterrà, mentre il nome dell'activity è il nome della classe che deriveremo dalla classe Activity di Android e che sarà la classe principale dell'applicazione. SEMM2013

83 File ottenuti 3/3 La certella res contiene tutte le risorse necessarie del progetto: res/drawable/: contiene immagini (PNG, JPEG etc.). res/mipmap : supportato da android > 17. Tecnologia che ha lo scopo di aumentare la velocità di rendering e di ridurre gli artefatti a scapito di una maggiore richiesta di memoria. res/layout/: contiene i file xml necessari per il layout dell applicazione. res/menu/: contiene la definizione dei menù dell applicazione (di default non viene creata). res/values/: contiene altre risorse del progetto, come stringhe (strings.xml), stili (styles.xml) colori (colors.xml) etc. SEMM

84 Conclusioni In questa lezione abbiamo visto come creare un nuovo progetto in Android Studio e come eseguire la nostra applicazione all'interno dell'emulatore. SEMM

85 Android Hello, Android! (My Application) SEMM2013

86 Introduzione In questa lezione vedremo come applicare i concetti acquisiti nella lezione precedente e creeremo la nostra prima applicazione per Android. Come tradizione la prima applicazione sviluppata in un nuovo linguaggio si chiama Hello World (nel nostro caso My Application ) e si limita a visualizzare sullo schermo un messaggio di saluto. SEMM2013

87 Nome progetto e Activity Il nome del progetto e il nome dell'activity possono coincidere o meno: nell'esempio il progetto è My Application e l'activity è MainActivity. La differenza è che il progetto dà il nome alla directory che lo conterrà, mentre il nome dell'activity è il nome della classe che deriveremo dalla classe ActionBarActivity di Android e che sarà la classe principale dell'applicazione. SEMM2013

88 Nome del package Bisogna specificare il namespace sotto il quale si vuole che risieda il nostro codice sorgente, seguendo le stesse regole del linguaggio Java. Poiché è importante che nel sistema il nome del package sia unico rispetto a tutti quelli installati nel sistema, si usa un nome di package in stile nome di dominio. Nell'esempio è stato utilizzato com.android.corso.it.myapplication. SEMM2013

89 Nome dell'applicazione L'ultimo dettaglio da specificare al momento della creazione del progetto è l'application Name: questo è il nome dell'applicazione che apparirà sia come descrizione nell'elenco di applicazioni installate che sulla barra del titolo quando la nostra applicazione sarà in esecuzione, quindi è importante che si tratti di un nome facilmente comprensibile. SEMM2013

90 AndroidManifest.xml SEMM2013

91 Codice autogenerato MainActivity.Java conterrà il seguente codice: public class MainActivity extends ActionBarActivity protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); public boolean oncreateoptionsmenu(menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getmenuinflater().inflate(r.menu.menu_main, menu); return true; public boolean onoptionsitemselected(menuitem item) {... SEMM2013

92 Codice modificato public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); } TextView tv = new TextView(this); tv.settext("hello, Android!"); setcontentview(tv); SEMM2013

93 View e TextView In Android le interfacce utente sono composte da gerarchie di classi dette View. Una View è semplicemente un oggetto che può essere disegnato, come un radio button, una animazione o (come nel nostro caso) una etichetta di testo. Il nome della sottoclasse della classe View che permette di gestire il testo è semplicemente TextView. SEMM2013

94 Creazione della TextView Per creare una TextView si procede come si fa di solito in Java invocando il costruttore: TextView tv = new TextView(this); L'argomento passato al costruttore deve essere una istanza del Context di Android, dove il Context è semplicemente un handle che ci permette di accedere al sistema (ad esempio per risolvere risorse, ottenere l'accesso a database e preferenze e così via). SEMM2013

95 Metodi di TextView Poiché la classe HelloAndroid è derivata da Activity che a sua volta è derivata da Context, allora al costruttore di TextView possiamo passare this ovvero la nostra istanza di HelloAndroid. Possiamo poi invocare un metodo di TextView per dirgli quale deve essere il testo da visualizzare: tv.settext("hello, Android"); SEMM2013

96 Collegamento al display Dopo avere creato la TextView e averle detto quale testo mostrare, l'ultimo passo consiste nel collegare questa TextView con lo schermo: setcontentview(tv); Questo metodo di Activity indica al sistema quale View deve essere associata all'interfaccia grafica dell'activity stessa (in questo caso una TextView). Se non viene mai invocato l'activity mostrerà solo uno schermo vuoto. SEMM2013

97 Esecuzione Infine, premendo il pulsante Run si otterrà: Durante l'avvio, la finestra Android DDMS dell'ide ci comunica passo passo le operazioni in corso: SEMM2013

98 Commenti Come si vede nell'immagine precedente, la scritta Hello, Android viene mostrata due volte. La scritta più in alto è il nome dell'applicazione mostrato sulla barra del titolo; è la stringa che abbiamo scelto come Application Name quando abbiamo creato il progetto. Invece la seconda scritta è il testo che abbiamo associato alla TextView. SEMM2013

99 Conclusioni In questa lezione abbiamo visto come creare la nostra prima applicazione. Abbiamo messo in pratica quanto appreso alla lezione precedente riguardo allo sviluppo e all'esecuzione di una nuova applicazione per Android. Abbiamo inoltre iniziato a prendere dimestichezza con le classi Context, Activity, View e TextView. SEMM2013

100 Android Anatomia di una applicazione

101 Building Blocks Gli elementi di base per costruire una applicazione sono Source: codelearn.org 2

102 Activity (1/3) Le Activity sono l'elemento di base più comune. Rappresentano blocchi logici dell'applicazione ed interagiscono con l'utente mediante i dispositivi di input dello smartphone. Serve una Activity per ogni schermata dell'applicazione (es. una per comporre un messaggio, una per consultare la rubrica e una per le configurazioni). Vengono derivate dalla classe base android.app.activity. 3

103 Activity (2/3) La propria Activity derivata mostrerà una interfaccia utente composta da View e risponderà ad eventi. Spostarsi da una schermata all'altra fa avviare una nuova Activity. In certi casi l'activity chiamata restituirà un valore all'activity chiamante (ad esempio una schermata che permette di selezionare una foto restituirà al chiamate la foto scelta). Quando si apre una nuova schermata, quella precedente è messa in pausa e inserita in una pila (activity stack). 4

104 Activity (3/3) L'utente può quindi navigare avanti e indietro tra le schermate aperte nell'activity stack. Per alcune schermate può essere inappropriato rimanere nell'activity stack, e in questo caso è possibile rimuoverle. Android mantiene un activity stack per ogni applicazione lanciata dalla schermata Home. source: 5

105 Activity - Fragment Con Android 3.0 sono stati introdotti i Fragment. Un Fragment costituisce una porzione di UI di una data Activity con le seguenti proprietà: E' caratterizzata da un proprio ciclo di vita Possiede un proprio input Può essere aggiunto e rimosso mentre l'activity è in esecuzione Per es., una Activity potrebbe includere molti Fragment quando il display è abbastanza ampio, oppure solo alcuni in caso contrario. 6

106 Intent 1/4 L'Intent rappresenta un messaggio in grado di attivare i tre componenti-base di una applicazione: Activity, Service e Broadcast Receiver Un Intent descrive cosa una applicazione vuole che venga fatto. La struttura dati dell'intent si compone dell'azione da effettuare e dei dati su cui agire. Valori tipici per l'azione sono MAIN (la schermata principale dell'applicazione), VIEW, PICK, EDIT etc. 7

107 Intent 2/4 Un Intent può essere Esplicito o Implicito: Esplicito: all'interno del costruttore dell'intent specifichiamo la classe da eseguire (tipicamente una Activity). Nell'esempio seguente è istanziato un Intent in cui è dichiarata una Activity da eseguire. Intent intent = new Intent(this, SubActivity.class); startactivity(intent); 8

108 Intent 3/4 Implicito: rappresenta l'essenza della filosofia Android. Un Intent implicito dichiarata l'azione da eseguire pur senza sapere chi la eseguirà. Nel seguente esempio è dichiarato un Intent mediante cui avviare una Activity che visualizzerà il sito definito nell'uri Uri uri = Uri.parse(" Intent it = new Intent(Intent.ACTION_VIEW,uri); startactivity(it); 9

109 Intent 4/4 In generale, potrebbe essere necessario richiedere specifici permission per eseguire un particolare Intent Tali permessi devono essere dichiarati nel manifest.xml, ad esempio: <uses-permission android:name="android.permission.internet" /> 10

110 IntentFilter 1/2 Una classe correlata si chiama IntentFilter. Una Activity che è in grado di mostrare le informazioni di contatto per una persona pubblicherà un IntentFilter nel quale dirà che sa come gestire l'azione VIEW quando essa è applicata a dati che rappresentano una persona. Le Activity pubblicano i loro IntentFilter nel file AndroidManifest.xml. La navigazione da una schermata all'altra viene effettuata risolvendo gli Intent. 11

111 IntentFilter Un IntentFilter sempre presente nella nostra applicazione è il seguente: <activity android:name=".intentsample" <intent-filter> <action android:name="android.intent.action.main" /> <category android:name="android.intent.category.launcher" /> </intent-filter> </activity> La action dichiara che si tratta di un entry point, mentre la category indica che questo entry point può essere listato nell'application Launcher Ovvero, la nostra Activity si rende disponibile nella home per essere eseguita mediante click/tap sull'icona relativa 12

112 Intent - Navigazione Per navigare avanti una Activity chiama startactivity(myintent); Il sistema guarda quindi gli IntentFilter per tutte le applicazioni installate e sceglie l'activity il cui IntentFilter è più appropriato per myintent. La nuova Activity è informata dell'intent, e viene quindi lanciata. 13

113 Intent - Esecuzione a run-time Il fatto di risolvere gli Intent al tempo di esecuzione solo quando startactivity() viene chiamata comporta almeno due benefici principali: Le Activity possono riutilizzare funzionalità di altri componenti semplicemente facendo una richiesta sotto forma di un Intent. Le Activity possono essere sostituite in ogni momento da una nuova Activity con un IntentFilter equivalente. Rif: content/intent.html 14

114 BroadcastReceiver 1/2 Il secondo elemento di base di una applicazione è la classe BroadcastReceiver definita all'interno del package android.content. Viene utilizzato quando si vuole che parte del codice della propria applicazione venga eseguito in risposta ad un evento esterno (es. il telefono squilla, o una connessione dati diventa disponibile, oppure quando è mezzanotte). Affinché un BroadcastReceiver venga chiamato non è necessario che la relativa applicazione sia in esecuzione. 15

115 BroadcastReceiver 2/2 I BroadcastReceiver non hanno interfaccia grafica, ma possono usare il NotificationManager per avvisare l'utente che è successo qualcosa di interessante. Anche i BroadcastReceiver come gli IntentFilter sono registrati nel file AndroidManifest.xml, ma possono essere anche registrati dal sorgente usando la chiamata Context.registerReceiver(). Le applicazioni possono lanciare i broadcast alle altre con Context.sendBroadcast(). 16

116 PendingIntent 1/2 Un PendingIntent è un oggetto che contiene un Intent di un azione da effetturare con esso Passando un PendingIntent ad un'altra application, le garantiamo il permesso di eseguire l'operazione che abbiamo stabiito come se l'altra applicazione fosse proprio la nostra applicazione 17

117 Pending Intent 2/2 Le istanze di questa classe sono create con : getactivity(context, int, Intent, int) :consente al componente che riceve tale pending intent di lanciare una nuova activity tramite Context.startActivity(Intent). getbroadcast(context, int, Intent, int): consente al componente che riceve tale pending intent di inviare un annuncio broadcast tramite Context.sendBroadcast(Intent). getservice(context, int, Intent, int): consente al componente che riceve tale pending intent di avviare un nuono service tramitecontext.startservice(inten 18

118 Service Un altro elemento di base delle applicazioni Android è il Service, ovvero del codice senza interfaccia grafica e sono definiti all'interno del package android.app. Un buon esempio è la riproduzione di un brano musicale: poiché si vuole che la riproduzione continui anche dopo che l'utente ha cambiato schermata, non la si può lasciare eseguire ad una Activity ma bisogna chiamare Context.startService() per eseguirla in background. 19

119 Cosa non è un service Un Service non è un processo separato: in altre parole l'applicazione e il suo servizio sono eseguiti all'interno dello stesso processo (se non altrimenti specificato) Non è un thread: non è uno strumento mediante cui fare eseguire delle attività al di fuori del thread principale 20

120 Cosa è un service Un Service è uno strumento mediante cui l'applicazione vuol comunicare al sistema che una data operazione deve essere eseguita in background anche quando l'utente non sta interagendo direttamente con essa. Uno strumento mediante il quale l'applicazione mette a disposizione di altre applicazioni alcune delle proprie funzionalità. Ciò può essere realizzato invocando una Context.bindService() mediante la quale viene stabilita una connessione tra l'applicazione richiedente ed il servizio richiesto. 21

121 Content Provider L'ultimo elemento di base è il Content Provider, definito all'interno della classe Android.Content Solitamente le applicazioni memorizzano i loro dati all'interno del file-system oppure in un database SQLite, ma se i dati di una applicazione devono essere condivisi con le altre bisogna usare la classe ContentProvider. Un ContentProvider è una classe che implementa un insieme standard di metodi per permettere alle altre applicazioni di salvare e recuperare dati. 22

122 Conclusioni In questa lezione abbiamo visto brevemente le quattro classi alla base di ogni applicazione Android: Activity, Intent, BroadcastReceiver, Service e ContentProvider. 23

123 Android Ciclo di vita di Activity, Service e Processi

124 Introduzione In questa lezione analizzeremo il ciclo di vita delle Activity e dei Service mettendo in evidenza i criteri utilizzati da Android nella gestione dei relativi processi SEMM2013 2

125 Activity 1 Pur essendo possibile avviare più applicazioni contemporaneamente soltanto una può occupare il display, mentre le altre saranno nascoste in background Questo è il motivo per cui, il concetto di chiusura è secondario e normalmente non troveremo il punsante Esci SEMM2013 3

126 Activity 2 source: SEMM2013 4

127 Activity 3 OnCreate(Bundle): e' invocato quando l'activity viene avviata per la prima volta. Il Bundle savedinstancestate serve per riportare l'activity nello stesso stato in cui si trovava la precedente istanza dell'activity terminata. OnStart(): è invocato quando l'activity sta per essere visualizzata onresume(): è invocato non appena l'activity inizia ad "interagire" con l'utente onpause(): è invocato non appena l'activity sta per essere ibernata (per es. e' stata avviata un'altra activity) onstop(): è invocato nel momento in cui l'activity non e' piu' visibile all'utente. SEMM2013 5

128 Activity 4 onrestart(): è invocato quando l'activity sta per essere riavviata dopo essere stata precedentemente arrestata ondestroy(): è invocata poco prima che l'activity sia distrutta onsaveinstancestate(bundle): è invocata per salvare lo stato dell'activity onrestoreinstancestate(bundle): è invocata solo se in precedenza è stato salvato uno stato SEMM2013 6

129 Bundle Bundle is generally used for passing data between various Activities of android. It depends on you what type of values you want to pass but bundle can hold all types of values and pass to the new activity. You can use it like... Intent intent = new Intent(getApplicationContext(),SecondActivity.class); intent.putextra("mykey",anyvalue); startactivity(intent); Now you can get the passed values by... Bundle extras = intent.getextras(); String tmp = extras.getstring("mykey"); you can also find more info on android-using-bundle-for-sharing-variables and Passing-Bundles- Around-Activities shareimprove this answer SEMM2013 7

130 Ciclo di vita di un Service Quando viene invocato il metodo startservice() il sistema verifica se tale servizio è in escuzione altrimenti esegue oncreate() Successivamente è invocato il metodo onstartcommand() e il servizio è finalmente nello stato di esecuzione dove rimane fino a quando non sarà richiamato stopservice() oppure stopself(). SEMM2013 8

131 Service 1/2 oncreate(): a differenza delle Activity non presenta alcun parametro. Creato il servizio viene invocato il metodo onstartcommand(). Viene invocato una sola volta. onstartcommand(): invocato questo metodo il servizio resterà in esecuzione e rimarrà in questo stato fino a quando non sarà invocato stopservice() da parte dell'activity che lo ha generato, oppure stopself() da parte del servizio stesso. Può essere invocato più volte in seguito all'esecuzione di onstartservice() da parte dell'activity. SEMM2013 9

132 Service 2/2 ondestroy(): l'invocazione di stopservice() da parte dell'activity produrrà la chiamata di questo metodo del Servizio. In seguito a questa chiamata il servizio sarà eliminato SEMM

133 Applicazioni e Processi Per ogni applicazione che viene eseguita, Android avvia un nuovo processo Linux Di default, tutti i componenti di una data applicazione (per es. Activity + Service) sono eseguiti all'interno dello stesso processo Se al momento di avviare una applicazione esiste già un processo assegnato ad essa perchè un suo componente è stato eseguito in precedenza, allora tale applicazione sarà eseguita all'interno di questo processo SEMM

134 Applicazioni e Processi Nel caso in cui la memoria a disposizione per eseguire una applicazione in foreground (visibile all'utente) ovvero per eseguire un importante processo non sia disponibile, allora il sistema può decidere di eliminare uno o più processi in background secondo una logica ben definita Ad ogni processo viene assegnata una sorta di importanza gerarchica in base ai suoi componenti in esecuzione ed al loro stato Ovviamente i processi di minore importanza saranno i primi ad essere eliminati per liberare memoria SEMM

135 Applicazioni e Processi Sono state definite 5 tipologie di processi ordinate per importanza decrescente: Foreground Process Visible Process Service Process Background Process Empty Process SEMM

136 Foreground Process I processi Foreground sono quelli che eseguono componenti di interazione con l'utente: Activity in cima allo Stack Azioni di un BroadCastReceiver (OnReceive()) Metodi di callback nella gestione di un servizio come Start(), Create() o Destroy() Normalmente il numero di questo tipo di processi è limitato. Android potrà decidere di eliminarne uno come ultima chance per risolvere il problema di memoria SEMM

137 Visible Process Sono processi che pur non essendo direttamente visibili all'utente (non possiedono componenti in Foreground, si trovano in uno stato in cui possono comunque avere effetto su quello che l'utente vede visualizzato. Activity non in Foreground che esegue OnPause() Service connesso ad un'activity in Foreground. SEMM

138 Service Process Sono processi che eseguono Service Pur non interagendo direttamente con l'utente, Android li ritiene più importanti delle Activity in Background L'esempio classico è la riproduzione di un file audio: pur non interagendo direttamente con l'utente, questo accetterà malvolentieri l'interruzione dell'ascolto del brano. Pertanto Android proverà ad eliminare uno o più processi meno importanti prima di eliminare un Service Process SEMM

139 Background Process Sono processi che si occupano di eseguire Activity non più in Foreground per i quali è stato invocato il metodo OnStop() Il loro numero è in genere superiore a quello delle altre categorie L'eliminazione all'interno di questa categoria tiene in considerazione il criterio di Least Recent Used (LRU) Per questi processi è comunque definito un meccanismo di salvataggio e ripristino SEMM

140 Empty Process Sono i processi candidati per l'eliminazione. Non eseguono alcun componente Il motivo per cui non vengono eliminati nel momento in cui sono svuotati dai componenti che eseguivano è legato a strategie di caching Gli empty Process più vecchi saranno velocemente eliminati, mentre per quelli più recenti è più probabile che l'utente richiami un suo componente precedentemente visualizzato SEMM

141 Android Implementare una interfaccia utente

142 Introduzione In questa lezione vedremo come implementare una interfaccia utente sullo schermo di Android. Vedremo gli elementi di base visualizzabili sullo schermo ed i layout che permettono di disporre i vari elementi dell'interfaccia grafica. SEMM2013 2

143 Gerarchia di elementi dello schermo Come visto più volte durante questo corso l'elemento di base di una applicazione sono gli oggetti della classe android.app.activity. Una Activity può fare molte cose, ma di per sé non ha associata una schermata. Per assegnare ad una activity una interfaccia grafica si lavora con oggetti del tipo View e Viewgroup. SEMM2013 3

144 android.view.view La classe View è una struttura dati le cui proprietà memorizzano il layout e il contenuto di una specifica area rettangolare sullo schermo. L'oggetto View gestisce le dimensioni, il layout, il disegno, il focus, lo scorrimento, i tasti e i tocchi per lo schermo. La classe View serve come classe di base per diversi widget già implementati (Text, EditText, InputMethod, MovementMethod, Button, RadioButton, Checkbox e ScrollView). SEMM2013 4

145 android.view.viewgroup Come il nome stesso suggerisce, un ViewGroup è un oggetto il cui compito è quello di contenere un insieme di altri View e ViewGroup. In tal modo schermate complesse possono essere gestite come se fossero una unica entità. La classe ViewGroup serve come classe di base per diversi tipi comuni di layout già implementati. SEMM2013 5

146 GUI strutturata ad albero L'interfaccia grafica di una Activity è costituita da un albero di View e ViewGroup. Per collegare l'albero allo schermo, l'activity invoca la propria setcontentview() passando come argomento il nodo radice. SEMM2013 6

147 Disegno dell'albero Una volta che Android ha il riferimento all'oggetto del nodo radice può lavorare direttamente con esso per invalidare, misurare e disegnare l'albero. Quando l'activity diventa attiva e riceve il focus, il sistema lo notifica all'activity che richiede quindi al nodo radice di misurare e disegnare l'albero. Il nodo radice richiede quindi ad ognuno dei nodi figli di disegnare se stessi, e così via. SEMM2013 7

148 Disegno dei figli Ogni ViewGroup ha la responsabilità di misurare lo spazio disponibile, disporre i suoi figli e invocare il metodo Draw() su ognuno dei figli per fare in modo che si disegnino. Il figlio può quindi richiedere una dimensione e una posizione nel genitore, ma la decisione finale su dove e quanto grande possa essere il figlio spetta all'oggetto genitore. SEMM2013 8

149 ViewGroup.LayoutParams Ogni classe ViewGroup usa una classe innestata che estende LayoutParams. Questa sottoclasse contiene le proprietà che definiscono dimensione e posizione dei figli. SEMM2013 9

150 Dimensioni Tutti i ViewGroup includono larghezza e altezza; molti includono anche margini e bordi. A volte potrebbe essere necessario impostare larghezza e altezza a un valore fisso, mentre nella maggior parte dei casi si potrebbe voler richiedere a un ViewGroup di assumere le dimensioni degli oggetti in essi contenuti oppure la dimensione massima possibile. SEMM

151 Gerarchia View SEMM

152 Tipi di layout comuni Alcuni tipi di layout molto comuni sono: FrameLayout LinearLayout TableLayout RelativeLayout GridLayout (da 4.0) SEMM

153 FrameLayout E' l'oggetto di layout più semplice. E' uno spazio vuoto riservato sullo schermo che può essere riempito con un singolo oggetto. Tutti gli oggetti figli vengono allineati all'angolo in alto a sinistra. I figli aggiunti successivamente andranno quindi a coprire (totalmente o parzialmente) i figli aggiunti in precedenza. img: SEMM

154 LinearLayout Un LinearLayout allinea tutti i suoi figli in una direzione, in orizzontale o verticale, a seconda di quale proprietà viene settata. Si possono definire gravità e peso in modo che un oggetto (es. Comments) si espanda. img: SEMM

155 TableLayout Il TableLayout dispone i figli in righe e colonne. E' formato da oggetti di tipo TableRow, formati da celle che a loro volta contengono una sola View. img: SEMM

156 RelativeLayout Il RelativeLayout permette ai figli di specificare la loro posizione relativa a quella di un altro, identificato tramite un ID. img: SEMM

157 GridLayout Il GridLayout (disponibile a partire dalla 4.0) consente di definire una griglia fatta di righe, colonne e celle all'interno delle quali inserire i widget. La differenza con il TableLayout è che gli oggetti all'interno delle celle si adattano alle variazioni nell'interfaccia (es. Dimensione dei font) e utilizza meno memoria. SEMM

158 Fragment Sono stati introdotti a partire dalla 3.0 La classe base per i Fragments è android.app.fragment Facilitano il riuso di componenti in differenti layout: per es., si può definire un layout di tipo single-pane per smartphone e multi-pane from: developer.android.com tablet. SEMM

159 Menu Esistono tre tipologie di Menu: Option Menu e Action bar: fino alla 2.3 attivabile dal pulsante menu, a partire dalla 3.0 è stato sostituito dalla Action bar Context menu e contextual action mode E' un floating menu visualizzato in seguito ad una long-click su un dato elemento. A partire dall 3.0 si utilizza la contextual action mode. Popup menu E' simile ad un context menu ma appare ancorato ad una View SEMM

160 Action bar E' garantita la retrocompatibilità dei menu Action bar che comprende: [1] icona app, [2] due action items [3] action overflow (menu contestuale) (Android 3.0 API level 11) Options menu nella App Browser (Android 2.3) SEMM

161 Context menu Floating context menu contextual action bar SEMM

162 Popup menu Un Popup menu, pur essendo simile ad un Context menu, è ancorato ad una particolare view (come ad esempio un Button) Si differenzia dal context menu, che generalmente ha effetto sul contenuto selezionato E' pensato per fornire l'estensione di un comando (ad esempio il button "Add" la cui pressione visualizza appunto un popup menu con differenti opzioni "Add") Img: Corso di programmazione per Android. Livello 6 SEMM

163 Fragment DetailFragment fragment = (DetailFragment) getfragmentmanager(). findfragmentbyid(r.id.detail_frag); if (fragment==null! fragment.isinlayout()) { // start new Activity } else { fragment.update(...); } Esistono fondamentalmente due approcci: Si utilizza una sola Activity che ad es. mostra due Fragment per i Tablet ed un fragment per gli Smartphone Facilitano il riuso di componenti in differenti layout: per es., si può definire un layout di tipo single-pane per smartphone e multi-pane tablet. SEMM

164 Creazione della UI Mediante l'adt è possibile creare l'intera UI della nostra applicazione, con i layout, i widget e le altre risorse, senza scrivere alcuna riga di codice Esistono anche altri tool di supporto tra i quali: DroidDraw per sviluppare la UI Android UI Utils composte da: UI Prototyping Stencils, per la prototipazione Android Asset Studio, per la generazione di Icone Android Icon Templates, raccolta di Icon Template in formato PhotoShop SEMM

165 Conclusioni In questa lezione abbiamo visto le caratteristiche di base della gestione dell'interfaccia utente da parte di Android. In particolare abbiamo visto l'organizzazione gerarchica degli oggetti e i 5 principali tipi di layout usati per disporre gli oggetti sullo schermo. SEMM

Android. Anatomia di una applicazione

Android. Anatomia di una applicazione Android Anatomia di una applicazione Elementi di base Gli elementi di base per costruire una applicazione Android sono cinque: Activity Intent Broadcast Receiver Service Content Provider 2 Activity (1/3)

Dettagli

Android. Implementare una interfaccia utente

Android. Implementare una interfaccia utente Android Implementare una interfaccia utente Introduzione In questa lezione vedremo come implementare una interfaccia utente sullo schermo di Android. Vedremo gli elementi di base visualizzabili sullo schermo

Dettagli

Android. Ciclo di vita di Activity, Service e Processi

Android. Ciclo di vita di Activity, Service e Processi Android Ciclo di vita di Activity, Service e Processi Introduzione In questa lezione analizzeremo il ciclo di vita delle Activity e dei Service mettendo in evidenza i criteri utilizzati da Android nella

Dettagli

ANDROID. Domenico Talia. Università della Calabria. talia@dimes.unical.it

ANDROID. Domenico Talia. Università della Calabria. talia@dimes.unical.it ANDROID Domenico Talia Università della Calabria talia@dimes.unical.it Sistemi Operativi per Mobile! I sistemi operativi per sistemi mobili seguono i principi dei SO classici ma devono gestire risorse

Dettagli

Programmazione in ambiente

Programmazione in ambiente 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

Dettagli

Sistemi Mobili e Wireless Android Introduzione alla piattaforma

Sistemi Mobili e Wireless Android Introduzione alla piattaforma Sistemi Mobili e Wireless Android Introduzione alla piattaforma Stefano Burigat Dipartimento di Matematica e Informatica Università di Udine www.dimi.uniud.it/burigat stefano.burigat@uniud.it Cos'è Android?

Dettagli

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

Android. Android. Sviluppo di applicazioni. Dalvik 19/03/2011. A. Ferrari Android Android A. Ferrari Android è un sistema opera8vo per disposi8vi mobili. Inizialmente sviluppato da Startup Android Inc. acquisita poi nel 2005 da Google Inc. Il cuore di Android è un kernel Linux.

Dettagli

Programmazione Android. Luca Morettoni <luca@morettoni.net> http://www.morettoni.net

Programmazione Android. Luca Morettoni <luca@morettoni.net> http://www.morettoni.net Programmazione Android Luca Morettoni http://www.morettoni.net Android Programming Cos'è Android; Concetti di base sulla programmazione: Q&A AndroidManifest; Activities; Services;

Dettagli

Tecniche di progettazione e sviluppo di applicazioni mobile

Tecniche di progettazione e sviluppo di applicazioni mobile Slide del corso FSE Tecniche di progettazione e sviluppo di applicazioni mobile svolto presso AREA Science Park Padriciano - Trieste - Italy diegozabot@yahoo.it Android Introduzione diegozabot@yahoo.it

Dettagli

L ambiente di sviluppo Android Studio

L ambiente di sviluppo Android Studio L ambiente di sviluppo Android Studio Android Studio è un ambiente di sviluppo integrato (IDE, Integrated Development Environment) per la programmazione di app con Android. È un alternativa all utilizzo

Dettagli

14/10/2015 ALESSANDRAZULLO SVILUPPO DI APPLICAZIONI ANDROID- VERSIONE 1. http://alessandrazullo.altervista.org Alessandra Zullo

14/10/2015 ALESSANDRAZULLO SVILUPPO DI APPLICAZIONI ANDROID- VERSIONE 1. http://alessandrazullo.altervista.org Alessandra Zullo 14/10/2015 ALESSANDRAZULLO SVILUPPO DI APPLICAZIONI ANDROID- VERSIONE 1 http://alessandrazullo.altervista.org Alessandra Zullo Indice Provvisorio INTRODUZIONE... 3 COMPONENTI PRINCIPALI... 3 PROCESSI...

Dettagli

Scuola Professionale e Filologica Geom. F.Borgogna Vercelli

Scuola Professionale e Filologica Geom. F.Borgogna Vercelli Scuola Professionale e Filologica Geom. F.Borgogna Vercelli Corsi ANDROID 2013/2014 Benvenuti nel mondo dinamico dello sviluppo di applicazioni per smartphone e tablet Android Corsi ANDROID 2013/2014 L

Dettagli

Sistemi Mobili e Wireless Android Primi passi

Sistemi Mobili e Wireless Android Primi passi Sistemi Mobili e Wireless Android Primi passi Stefano Burigat Dipartimento di Matematica e Informatica Università di Udine www.dimi.uniud.it/burigat stefano.burigat@uniud.it Ambiente di sviluppo L'ambiente

Dettagli

Programmazione Android

Programmazione Android Programmazione Android Giovanni Perbellini, Stefano Cordibella Università di Verona EDALab S.r.l. Agenda Introduzione Android Overview Ambiente di sviluppo Esempi Helloworld Weather 2 1 Cos è Android?

Dettagli

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

Android development. Sviluppo di Mobile Apps sul sistema operativo di Google Android development Sviluppo di Mobile Apps sul sistema operativo di Google Agenda Giorni: Gio 14/04/2011 Ven 15/04/2011 Gio 21/04/2011 Ven 22/04/2011 Suddivisione: Mattina: teoria Pomeriggio: pratica

Dettagli

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

Android world. Sviluppare app per Android. Un insieme di software per dispositivi mobili (smartphone, tablet, portatili...) Android world Un insieme di software per dispositivi mobili (smartphone, tablet, portatili...) Contiene un Sistema Operativo, software middleware e applicazioni varie Sviluppato da Open Handset Alliance,

Dettagli

MagiCum S.r.l. Progetto Inno-School

MagiCum S.r.l. Progetto Inno-School MagiCum S.r.l. Progetto Inno-School Area Sviluppo Software Autore: Sergio Gandola Revisione: 2 Data: 07/06/13 Titolo: Documentazione Tecnica Diario File:Documentazione Tecnica.pdf Sito: http://inno-school.netsons.org/

Dettagli

ANDROID 4.2 JELLY BEAN Installazione e configurazione dell ambiente

ANDROID 4.2 JELLY BEAN Installazione e configurazione dell ambiente INTRODUZIONE Per sviluppare applicazioni in grado di girare su sistemi Android servono tre cose: il Java JDK (Java Development Kit), che contiene tutti gli strumenti necessari a sviluppare nel linguaggio

Dettagli

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

Basi Android. Android si definisce open. Con8ene tecnologie open source. Il codice di Android è open. Licenza Open Source Apache 2. Basi Android 1 Android Cosa è Android? Android è un insieme di strumen8 e librerie per sviluppare applicazioni mobili è più di un SO Android si definisce open Con8ene tecnologie open source Linux Il codice

Dettagli

INTRODUZIONE ALLE PIATTAFORME

INTRODUZIONE ALLE PIATTAFORME INTRODUZIONE ALLE PIATTAFORME Android ios Windows Phone 8 Android 2 Cos è Android? Un moderno open-source sistema operativo Componenti: Linux kernel Java Core applications 3 Perché è stato un successo

Dettagli

La geolocalizzazione

La geolocalizzazione La geolocalizzazione La maggior parte dei dispositivi mobili di ultima generazione è dotata di un antenna GPS che permette di conoscere, in breve tempo e con la precisione di qualche metro, la propria

Dettagli

Android. Android03: Ciclo di vita di una Activity. diegozabot@yahoo.it

Android. Android03: Ciclo di vita di una Activity. diegozabot@yahoo.it Android Android03: Ciclo di vita di una Activity diegozabot@yahoo.it Ciclo di vita Ciclo di vita La classe Activity gestisce i propri stati definendo una serie di eventi che ne governano il ciclo. Spetta

Dettagli

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

Guida all uso dell ambiente di sviluppo 1 integrato o IDE. JCreator LE 4.50 Guida all uso dell ambiente di sviluppo 1 integrato o IDE JCreator LE 4.50 Inizializzazione: creazione del nuovo progetto e del file sorgente in ambiente JCreator Al lancio del programma si apre la finestra

Dettagli

Lezione 3 Le attività

Lezione 3 Le attività A cura di Carlo Pelliccia Le applicazioni Android, come si è accennato durante la prima lezione, si compongono di quattro mattoni fondamentali: le attività (activity), i servizi (service), i broadcast

Dettagli

Scaletta. Strumenti di sviluppo Prima applicazione Aspetti peculiari di Android. Conclusioni. Activity e Intent. MoBe s.r.l.

Scaletta. Strumenti di sviluppo Prima applicazione Aspetti peculiari di Android. Conclusioni. Activity e Intent. MoBe s.r.l. Scaletta Strumenti di sviluppo Prima applicazione Aspetti peculiari di Android Activity e Intent Conclusioni Strumenti di sviluppo Disponibili per Windows, Mac OS X (Intel) e Linux Strumenti JDK (Java

Dettagli

Display. Guida all Uso

Display. Guida all Uso Display Installazione Guida all Uso Scaricare l ospite (Insegnante) DisplayNote richiede un piccolo programma in esecuzione sul computer che ospita le connessioni per i dispositivi partecipanti, scaricarlo

Dettagli

Sistemi Mobili e Wireless Android Activity

Sistemi Mobili e Wireless Android Activity Sistemi Mobili e Wireless Android Activity Stefano Burigat Dipartimento di Matematica e Informatica Università di Udine www.dimi.uniud.it/burigat stefano.burigat@uniud.it Activity Tipicamente, un'activity

Dettagli

Tale attività non è descritta in questa dispensa

Tale attività non è descritta in questa dispensa Fondamenti di informatica Oggetti e Java ottobre 2014 1 Nota preliminare L installazione e l uso di Eclipse richiede di aver preliminarmente installato Java SE SDK Tale attività non è descritta in questa

Dettagli

Sviluppo su Android. Linux Day Torino 2010

Sviluppo su Android. Linux Day Torino 2010 Sviluppo su Android Linux Day Torino 2010 Francesco Ronchi francesco.ronchi@gmail.com - www.synesthesia.it Cos'è Android Sistema operativo dedicato ai device mobili: cellulari, palmari, tablet, navigatori...

Dettagli

Ciclo di vita delle aevità Android Mobile Programming Prof. R. De Prisco

Ciclo di vita delle aevità Android Mobile Programming Prof. R. De Prisco Ciclo di vita delle aevità Ogni AcHvity ha dei metodi standard A(vità non esiste 1. oncreate() 2. onstart() 3. onresume() A(vità in esecuzione 4. onpause() 5. onstop() 6. ondestroy() A(vità non esiste

Dettagli

Corso Eclipse. Prerequisiti. 1 Introduzione

Corso Eclipse. Prerequisiti. 1 Introduzione Corso Eclipse 1 Introduzione 1 Prerequisiti Uso elementare del pc Esecuzione ricerche su Internet Esecuzione download Conoscenza elementare della programmazione 2 1 Cos è Eclipse Eclipse è un IDE (Integrated

Dettagli

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

Indice: Introduzione 1 Strumenti di lavoro 2 Istallare Eclipse e SDK 3 Istallare l ADT in eclipse 4. Powered by: Vincenzo Acinapura Indice: Introduzione 1 Strumenti di lavoro 2 Istallare Eclipse e SDK 3 Istallare l ADT in eclipse 4 Introduzione Salve a tuttiù Mi presento mi chiamo Vincenzo Acinapura e studio ingegneria informatica,

Dettagli

Manuale LiveBox CLIENT DESKTOP (WINDOWS)

Manuale LiveBox CLIENT DESKTOP (WINDOWS) 2014 Manuale LiveBox CLIENT DESKTOP (WINDOWS) LiveBox Srl non rilascia dichiarazioni o garanzie in merito al contenuto o uso di questa documentazione e declina qualsiasi garanzia espressa o implicita di

Dettagli

Programmazione. Android

Programmazione. Android Lezioni 4 e 5 Programmazione Android Componenti di un'applicazione AndroidManifest.xml Le Activity Definizione Ciclo di vita Layout & View Interazione Laboratorio 9 e 12 Ottobre 2012 2 Componenti di un'applicazione

Dettagli

Guida introduttiva all'applicazione per dispositivi mobili Android

Guida introduttiva all'applicazione per dispositivi mobili Android Guida introduttiva all'applicazione per dispositivi mobili Android L'applicazione mobile SanDisk +Cloud consente di accedere ai contenuti e gestire il proprio account dal proprio dispositivo mobile. Con

Dettagli

Android. Elenco dei package

Android. Elenco dei package Android Elenco dei package Introduzione In questa lezione vedremo l'elenco completo dei package Android che raggruppano le classi che è possibile utilizzare per sviluppare una applicazione utilizzando

Dettagli

Motorola Phone Tools. Guida rapida

Motorola Phone Tools. Guida rapida Motorola Phone Tools Guida rapida Sommario Requisiti minimi...2 Operazioni preliminari all'installazione Motorola Phone Tools...3 Installazione Motorola Phone Tools...4 Installazione e configurazione del

Dettagli

Guida introduttiva all'applicazione per dispositivi mobili ios

Guida introduttiva all'applicazione per dispositivi mobili ios Guida introduttiva all'applicazione per dispositivi mobili ios L'applicazione mobile SanDisk +Cloud consente di accedere ai contenuti e gestire il proprio account dal proprio dispositivo mobile. Con l'applicazione

Dettagli

Compilazione rapporto di Audit in remoto

Compilazione rapporto di Audit in remoto Compilazione rapporto di Audit in remoto Installazione e manuale utente CSI S.p.A. V.le Lombardia 20-20021 Bollate (MI) Tel. 02.383301 Fax 02.3503940 E-mail: info@csi-spa.com Rev. 1.1 23/07/09 Indice Indice...

Dettagli

Iniziativa Comunitaria Equal II Fase IT G2 CAM - 017 Futuro Remoto. Approfondimento SOFTWARE PER L ARCHIVIAZIONE

Iniziativa Comunitaria Equal II Fase IT G2 CAM - 017 Futuro Remoto. Approfondimento SOFTWARE PER L ARCHIVIAZIONE APPROFONDIMENTO ICT Iniziativa Comunitaria Equal II Fase IT G2 CAM - 017 Futuro Remoto Approfondimento SOFTWARE PER L ARCHIVIAZIONE ORGANISMO BILATERALE PER LA FORMAZIONE IN CAMPANIA INDICE SOFTWARE PER

Dettagli

Applicazione Mobile GPL4i

Applicazione Mobile GPL4i Applicazione Mobile GPL4i Copyright 2010 2014 JetLab S.r.l. Tutti i diritti riservati Copyright 2014 2015 JetLab S.r.l. Tutti i diritti riservati GPL4i è un marchio di JetLab S.r.l. Microsoft, Windows,

Dettagli

Un Sistema Location-based per la mappatura degli Access Point

Un Sistema Location-based per la mappatura degli Access Point 1 Un Sistema Location-based per la mappatura degli Access Point Pasquale Cautela pasquale.cautela@studio.unibo.it Marco Peca marco.peca@studio.unibo.it Rosario Salpietro rosario.salpietro@studio.unibo.it

Dettagli

Caratteristiche principali. la struttura open source (escluse alcune versioni intermedie) il suo basarsi su kernel Linux.

Caratteristiche principali. la struttura open source (escluse alcune versioni intermedie) il suo basarsi su kernel Linux. Android s.o. Androidè un sistema operativo per dispositivi mobili costituito da uno stack software che include: un sistema operativo di base, i middleware per le comunicazioni le applicazioni di base.

Dettagli

Mobile Programming. Prova scritta del 28/01/2015. Prof. De Prisco. Corso di laurea in Informatica

Mobile Programming. Prova scritta del 28/01/2015. Prof. De Prisco. Corso di laurea in Informatica Corso di laurea in Informatica Mobile Prof. De Prisco Prova scritta del 28/01/2015 NOME: COGNOME: MATRICOLA: Domande Punti 1 /100 2 /100 3 /100 4 /100 5 /100 6 /100 7 /100 8 /100 9 /100 10 /100 TOTALE

Dettagli

Installazione del Software. per lo Sviluppo di Applicazioni Java

Installazione del Software. per lo Sviluppo di Applicazioni Java Installazione del Software per lo Sviluppo di Applicazioni Java Ing. Luca Ferrari ferrari.luca@unimore.it Tel. 0592056142 Installazione del Software per lo Sviluppo di Applicazioni Java 1 Il Compilatore

Dettagli

Lezione 1 Primi passi con Android

Lezione 1 Primi passi con Android A cura di Carlo Pelliccia Android è una piattaforma software per smartphone e tablet realizzata dal consorzio noto come Open Handset Alliance, di cui Google è capofila e maggiore contributore, ed al quale

Dettagli

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

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011 Fondamenti di Informatica 1 Prof. B.Buttarazzi A.A. 2010/2011 Sommario Installazione SOFTWARE JDK ECLIPSE 03/03/2011 2 ALGORITMI E PROGRAMMI PROBLEMA ALGORITMO PROGRAMMA metodo risolutivo linguaggio di

Dettagli

Installazione e Configurazione della strumentazione necessaria. Antonio Gallo info@laboratoriolibero.com

Installazione e Configurazione della strumentazione necessaria. Antonio Gallo info@laboratoriolibero.com Installazione e Configurazione della strumentazione necessaria Antonio Gallo info@laboratoriolibero.com Installazione e Configurazione della strumentazione necessaria Programmi accessori per poter sviluppare

Dettagli

Riferimento rapido di Novell Vibe Mobile

Riferimento rapido di Novell Vibe Mobile Riferimento rapido di Novell Vibe Mobile Marzo 2015 Introduzione L'accesso mobile al sito di Novell Vibe può essere disattivato dall'amministratore di Vibe. Se non si riesce ad accedere all'interfaccia

Dettagli

Nuova ECDL ONLINE COLLABORATION

Nuova ECDL ONLINE COLLABORATION PATENTE EUROPEA DEL COMPUTER Nuova ECDL ONLINE COLLABORATION CONCETTI FONDAMENTALI USO DI DISPOSITIVI MOBILI APPLICAZIONI SINCRONIZZAZIONE 4. COLLABORAZIONE MOBILE 4.1. Concetti fondamentali 4.1.1 Identificare

Dettagli

ARGO DOC Argo Software S.r.l. e-mail: info@argosoft.it -

ARGO DOC Argo Software S.r.l. e-mail: info@argosoft.it - 1 ARGO DOC ARGO DOC è un sistema per la gestione documentale in formato elettronico che consente di conservare i propri documenti su un server Web accessibile via internet. Ciò significa che i documenti

Dettagli

Utilizzo di Conference Manager per Microsoft Outlook

Utilizzo di Conference Manager per Microsoft Outlook Utilizzo di Conference Manager per Microsoft Outlook Maggio 2012 Sommario Capitolo 1: Utilizzo di Conference Manager per Microsoft Outlook... 5 Presentazione di Conference Manager per Microsoft Outlook...

Dettagli

DiFarm evolution. Convegno Rimini, 16-17 Novembre 2006

DiFarm evolution. Convegno Rimini, 16-17 Novembre 2006 DiFarm evolution Convegno Rimini, 16-17 Novembre 2006 E un argomento che interessa molti, tecnici e responsabili edp, ma anche direttori e imprenditori: I primi nell ottica di sviluppare un prodotto che

Dettagli

Interfaccia software per pc

Interfaccia software per pc Interfaccia software per pc Istruzioni per l uso Grazie per aver scelto un prodotto Esse-ti Questo prodotto è stato progettato appositamente per facilitare l'utente nelle attività telefoniche quotidiane.

Dettagli

File Leggimi di Acrobat 4.0: visualizzazione, stampa e creazione di file PDF con font dell estremo oriente

File Leggimi di Acrobat 4.0: visualizzazione, stampa e creazione di file PDF con font dell estremo oriente File Leggimi di Acrobat 4.0: visualizzazione, stampa e creazione di file PDF con font dell estremo oriente Questo file Leggimi contiene informazioni che completano il Manuale dell utente di Acrobat 4.0

Dettagli

FileMaker 8. Installazione dei driver client FileMaker 8 ODBC e JDBC

FileMaker 8. Installazione dei driver client FileMaker 8 ODBC e JDBC FileMaker 8 Installazione dei driver client FileMaker 8 ODBC e JDBC 2004-2005 Filemaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker

Dettagli

La piattaforma Android

La piattaforma Android Sistemi Embededd a.a. 2013/2014 La piattaforma Android Raffaele Di Natale raffaele.dinatale@dieei.unict.it rdinatale@dieei.unict.it Bibliografia Web sites http://developer.android.com/ E-books http://it-ebooks.info/book/659/

Dettagli

Corso App modulo Android. Antonio Gallo info@laboratoriolibero.com

Corso App modulo Android. Antonio Gallo info@laboratoriolibero.com Corso App modulo Android Antonio Gallo info@laboratoriolibero.com Strumentazione: PC + smartphone Android + cavo micro USB per connessione Framework Phonegap SDK di Android JDK (Java) Eclipse (opzionale)

Dettagli

Manuale videoconferenza da Postazione di Lavoro

Manuale videoconferenza da Postazione di Lavoro Manuale videoconferenza da Postazione di Lavoro v. 3.1 INDICE 1 ACCOUNT PORTALE DI VIDEOCONFERENZA...2 1.1 Accesso al portale...2 1.1.1 Registrazione...3 2 COME UTILIZZARE IL CLIENT DA PC PATPHONE...4

Dettagli

Installazione e guida introduttiva. Per WebReporter 2012

Installazione e guida introduttiva. Per WebReporter 2012 Per WebReporter 2012 Ultimo aggiornamento: 13 settembre, 2012 Indice Installazione dei componenti essenziali... 1 Panoramica... 1 Passo 1 : Abilitare gli Internet Information Services... 1 Passo 2: Eseguire

Dettagli

Guida dell'amministratore di JMP 8 alle versioni con licenza annuale per Windows, Macintosh e Linux

Guida dell'amministratore di JMP 8 alle versioni con licenza annuale per Windows, Macintosh e Linux Guida dell'amministratore di JMP 8 alle versioni con licenza annuale per Windows, Macintosh e Linux Gli estremi corretti per la citazione bibliografica di questo manuale sono i seguenti: SAS Institute

Dettagli

Lab 01 Sistemi Operativi

Lab 01 Sistemi Operativi Informatica Grafica Ingegneria Edile-Architettura a.a. 2010/2011 Lab 01 Sistemi Operativi Lab01 1 Obiettivi Durante l'esercitazione vedremo come il sistema operativo si occupa di gestire: 1. i processi

Dettagli

Lezione 3 Le attività

Lezione 3 Le attività A cura di Carlo Pelliccia Le applicazioni Android, come si è accennato durante la prima lezione, si compongono di quattro mattoni fondamentali: le attività (activity), i servizi (service), i broadcast

Dettagli

Il tuo manuale d'uso. SONY ERICSSON Z520I http://it.yourpdfguides.com/dref/452299

Il tuo manuale d'uso. SONY ERICSSON Z520I http://it.yourpdfguides.com/dref/452299 Può anche leggere le raccomandazioni fatte nel manuale d uso, nel manuale tecnico o nella guida di installazione di SONY ERICSSON Z520I. Troverà le risposte a tutte sue domande sul manuale d'uso (informazioni,

Dettagli

Manuale Utente MyFastPage

Manuale Utente MyFastPage Manuale MyFastPage Utente Elenco dei contenuti 1. Cosa è MyVoice Home?... 4 1.1. Introduzione... 5 2. Utilizzo del servizio... 6 2.1. Accesso... 6 2.2. Disconnessione... 7 2.3. Configurazione base Profilo

Dettagli

Piattaforma di e-learning I.R.Fo.M

Piattaforma di e-learning I.R.Fo.M Piattaforma di e-learning I.R.Fo.M Manuale d'uso per l'utente Ver. 1.0 Maggio 2014 I.R.Fo.M. - Istituto di Ricerca e Formazione per il Mezzogiorno 1 Sommario 1. Introduzione...3 1.1 L'ambiente...3 1.2

Dettagli

Scheda di Notifica Manuale d'uso

Scheda di Notifica Manuale d'uso Scheda di Notifica Manuale d'uso Revisione documento 02-2011 Questo documento contiene le istruzioni per l'utilizzo del software Scheda di Notifica di brentapaganella.com. E' consentita la riproduzione

Dettagli

Scrivere un programma in Java

Scrivere un programma in Java Programmare in JAVA Leonardo Rigutini Dipartimento Ingegneria dell Informazione Università di Siena Via Roma 56 53100 SIENA uff. 0577 234850 - interno: 7102 Stanza 119 rigutini@dii.unisi.it http://www.dii.unisi.it/~rigutini/

Dettagli

CELLULARE FACILE. duckma.com PHONOTTO. User Manual. Versione: 1

CELLULARE FACILE. duckma.com PHONOTTO. User Manual. Versione: 1 CELLULARE FACILE PHONOTTO User Manual Versione: 1 Installazione guidata Avviando l app partirà l installazione guidata, configurandola in base alle proprie preferenze ed esigenze. La prima schermata permette

Dettagli

bla bla Documenti Manuale utente

bla bla Documenti Manuale utente bla bla Documenti Manuale utente Documenti Documenti: Manuale utente Data di pubblicazione mercoledì, 25. febbraio 2015 Version 7.6.2 Diritto d'autore 2006-2013 OPEN-XCHANGE Inc., Questo documento è proprietà

Dettagli

E' sempre valido il comando che si usa anche con Outlook Express e con Windows Mail: shift più control più V.

E' sempre valido il comando che si usa anche con Outlook Express e con Windows Mail: shift più control più V. Microsoft Outlook 2007. Di Nunziante Esposito. `*************` Decima ed ultima parte: Varie. `***********` Dopo aver impostato al meglio le opzioni ed il layout di questo browser, e dopo le indicazioni

Dettagli

PhoneSuite Manuale dell utente. Istruzioni preliminari: installazione e primo impiego di Phone Suite

PhoneSuite Manuale dell utente. Istruzioni preliminari: installazione e primo impiego di Phone Suite PhoneSuite Manuale dell utente Istruzioni preliminari: installazione e primo impiego di Phone Suite Il software PhoneSuite può essere utilizzato direttamente da CD o essere installato sul PC. Quando si

Dettagli

Utilizzo della APP IrriframeVoice. Versione 1.0 maggio 2015

Utilizzo della APP IrriframeVoice. Versione 1.0 maggio 2015 Utilizzo della APP IrriframeVoice Versione 1.0 maggio 2015 0.0 Installazione Sul telefono o sul tablet andare sullo store delle applicazioni per scaricare la APP A seconda del sistema operativo del telefono

Dettagli

Installazione alla portata di tutti: Ubuntu e derivate

Installazione alla portata di tutti: Ubuntu e derivate Installazione alla portata di tutti: Ubuntu e derivate Prima di iniziare... Scaricare l'immagine.iso della distribuzione scelta (nel caso di questa guida Kubuntu); Masterizzare il file scaricato su di

Dettagli

Capitolo 1 Operazioni preliminari

Capitolo 1 Operazioni preliminari Manuale Utente Contenuti Capitolo 1 Operazioni preliminari... 1 Installazione... 1 Registrazione e login... 1 Test compatibilità... 2 Capitolo 2 Il Market... 4 Capitolo 3 Al Cinema... 6 Capitolo 4 Opzioni...

Dettagli

Qlik Sense Desktop. Qlik Sense 1.1 Copyright 1993-2015 QlikTech International AB. Tutti i diritti riservati.

Qlik Sense Desktop. Qlik Sense 1.1 Copyright 1993-2015 QlikTech International AB. Tutti i diritti riservati. Qlik Sense Desktop Qlik Sense 1.1 Copyright 1993-2015 QlikTech International AB. Tutti i diritti riservati. Copyright 1993-2015 QlikTech International AB. Tutti i diritti riservati. Qlik, QlikTech, Qlik

Dettagli

SMS-GPS MANAGER. Software per la gestione remota ed automatizzata dei telecontrolli gsm con e senza gps

SMS-GPS MANAGER. Software per la gestione remota ed automatizzata dei telecontrolli gsm con e senza gps SOFTWARE PER LA GESTIONE DEI TELECONTROLLI SMS-GPS MANAGER Software per la gestione remota ed automatizzata dei telecontrolli gsm con e senza gps Rev.0911 Pag.1 di 8 www.carrideo.it INDICE 1. DESCRIZIONE

Dettagli

MOBILE WEB DESIGN TUTORIAL ANDROID METAIO AUGMENTED REALITY

MOBILE WEB DESIGN TUTORIAL ANDROID METAIO AUGMENTED REALITY MOBILE WEB DESIGN TUTORIAL ANDROID METAIO AUGMENTED REALITY 1 Sommario 1. INTRODUZIONE... 3 2. GET METAIO... 4 2.1. PREREQUISITI... 4 2.2. INTALLAZIONE... 4 2.3. PROGETTI ESEMPLIFICATIVI... 4 3. USARE

Dettagli

EUCIP IT Administrator - Modulo 2 Sistemi operativi Syllabus Versione 3.0

EUCIP IT Administrator - Modulo 2 Sistemi operativi Syllabus Versione 3.0 EUCIP IT Administrator - Modulo 2 Sistemi operativi Syllabus Versione 3.0 Copyright 2011 ECDL Foundation Tutti i diritti riservati. Questa pubblicazione non può essere riprodotta in alcuna forma se non

Dettagli

La prima applicazione Java con NetBeans IDE. Dott. Ing. M. Banci, PhD

La prima applicazione Java con NetBeans IDE. Dott. Ing. M. Banci, PhD La prima applicazione Java con NetBeans IDE Dott. Ing. M. Banci, PhD Creare la prima applicazione 1. Creare un progetto: Quando si crea un progetto IDE occorre creare un ambiente nel quale costruire e

Dettagli

Boot Camp Beta 1.0.2 Guida di installazione e configurazione

Boot Camp Beta 1.0.2 Guida di installazione e configurazione Boot Camp Beta 1.0.2 Guida di installazione e configurazione 1 Indice 4 Panoramica 5 Punto 1: aggiornare il software di sistema e il firmware del computer 6 Punto 2: eseguire Assistente Boot Camp 9 Punto

Dettagli

Versione 2014. Installazione GSL. Copyright 2014 All Rights Reserved

Versione 2014. Installazione GSL. Copyright 2014 All Rights Reserved Versione 2014 Installazione GSL Copyright 2014 All Rights Reserved Indice Indice... 2 Installazione del programma... 3 Licenza d'uso del software... 3 Requisiti minimi postazione lavoro... 3 Requisiti

Dettagli

filrbox Guida all uso dell interfaccia WEB Pag. 1 di 44

filrbox Guida all uso dell interfaccia WEB Pag. 1 di 44 filrbox Guida all uso dell interfaccia WEB Pag. 1 di 44 Sommario Introduzione... 4 Caratteristiche del filrbox... 5 La barra principale del filrbox... 7 Elenco degli utenti... 8 Il profilo... 9 Le novità...

Dettagli

Introduzione all uso di Eclipse

Introduzione all uso di Eclipse Introduzione all uso di Eclipse Daniela Micucci Programmazione Outline Eclipse: concetti generali Definire un workspace Creare un project Importare un file Utilizzo 1 Introduzione Eclipse è un ambiente

Dettagli

INTERNET EXPLORER Breve manuale d uso

INTERNET EXPLORER Breve manuale d uso INTERNET EXPLORER Breve manuale d uso INDICE INTRODUZIONE... 3 COME IMPOSTARE LA PAGINA INIZIALE... 3 LA WORK AREA... 3 LE VOCI DI MENU... 5 IL MENU FILE... 5 IL MENU MODIFICA... 6 IL MENU VISUALIZZA...

Dettagli

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

Programmazione Fondi Strutturali 2007/2013 P.O.N. FSE A.S. 2013/2014 SCHEDA PROGETTUALE MODULO. Obiettivo: C Azione: 1 Riferimento interno: ISTITUTO ISTRUZIONE SECONDARIA SUPERIORE GUGLIELMO MARCONI Piazza Poerio 2, 70126 Bari - Tel.080-5534450 Fax.080-5559037 - www.marconibari.it - info@marconibari.it Programmazione Fondi Strutturali 2007/2013

Dettagli

Guida all'installazione

Guida all'installazione Prelude 1.0 Versioni Standard & Professional Guida all'installazione Requisiti di sistema Per installare ed usare Prelude, nelle versioni Standard e Professional 1.0, è necessario un Personal Computer

Dettagli

Acronis License Server. Manuale utente

Acronis License Server. Manuale utente Acronis License Server Manuale utente INDICE 1. INTRODUZIONE... 3 1.1 Panoramica... 3 1.2 Politica della licenza... 3 2. SISTEMI OPERATIVI SUPPORTATI... 4 3. INSTALLAZIONE DI ACRONIS LICENSE SERVER...

Dettagli

PHONOTTO. User Manual. Versione 0.90

PHONOTTO. User Manual. Versione 0.90 PHONOTTO User Manual Versione 0.90 Installazione guidata Avviando l app partirà l installazione guidata, configurandola in base alle proprie preferenze ed esigenze. Il primo passo mostra le impostazioni

Dettagli

Console di Amministrazione Centralizzata Guida Rapida

Console di Amministrazione Centralizzata Guida Rapida Console di Amministrazione Centralizzata Contenuti 1. Panoramica... 2 Licensing... 2 Panoramica... 2 2. Configurazione... 3 3. Utilizzo... 4 Gestione dei computer... 4 Visualizzazione dei computer... 4

Dettagli

Programmazione II. Lezione 4. Daniele Sgandurra 30/09/2011. daniele.sgandurra@iit.cnr.it

Programmazione II. Lezione 4. Daniele Sgandurra 30/09/2011. daniele.sgandurra@iit.cnr.it Programmazione II Lezione 4 Daniele Sgandurra daniele.sgandurra@iit.cnr.it 30/09/2011 1/46 Programmazione II Lezione 4 30/09/2011 Sommario 1 Esercitazione 2 Panoramica della Programmazione Ad Oggetti 3

Dettagli

Guida rapida all uso del client UC-One Desktop e Mobile per il servizio Cloud PBX Acantho

Guida rapida all uso del client UC-One Desktop e Mobile per il servizio Cloud PBX Acantho Guida rapida all uso del client UC-One Desktop e Mobile per il servizio Cloud PBX Acantho Versione 1.0 Dicembre 2014 Installazione su Smartphone Android oppure ios 1. Accedere allo store Play Store oppure

Dettagli

Kaguya 3D Moon-Navi Manuale utente

Kaguya 3D Moon-Navi Manuale utente Kaguya 3D Moon-Navi Manuale utente Grazie a Chiara, Guido e Luca per la traduzione dal giapponese; l'adattamento è colpa di Paolo Attivissimo. L'originale è scaricabile da http://wms.selene.jaxa.jp/3dmoon/manual.html.

Dettagli

Scansione. Stampante/copiatrice WorkCentre C2424

Scansione. Stampante/copiatrice WorkCentre C2424 Scansione In questo capitolo sono inclusi i seguenti argomenti: "Nozioni di base sulla scansione" a pagina 4-2 "Installazione del driver di scansione" a pagina 4-4 "Regolazione delle opzioni di scansione"

Dettagli

Installazione e caratteristiche generali 1

Installazione e caratteristiche generali 1 Installazione e caratteristiche generali 1 Introduzione SIGLA Ultimate e SIGLA Start Edition possono essere utilizzati solo se sono soddisfatti i seguenti prerequisiti: Microsoft.Net Framework 3.5 (consigliato

Dettagli

Quaderni per l'uso di computer

Quaderni per l'uso di computer Quaderni per l'uso di computer con sistemi operativi Linux Ubuntu 0- INSTALLAZIONE a cura di Marco Marchetta Aprile 2013 1 HARDWARE MASTERIZZATORE CD - DVD (*) (*) Requisiti minimi richiesti da da Ubuntu

Dettagli

Indice generale. Capitolo 1 Introduzione ad Android... 1

Indice generale. Capitolo 1 Introduzione ad Android... 1 Prefazione Introduzione...xvii...xix Capitolo 1 Introduzione ad Android... 1 Che cos è Android... 2 Un po di storia... 3 Android e Java... 4 Confronto con J2ME... 6 La Dalvik Virtual Machine... 9 L architettura

Dettagli

Struttura logica di un programma

Struttura logica di un programma Struttura logica di un programma Tutti i programmi per computer prevedono tre operazioni principali: l input di dati (cioè l inserimento delle informazioni da elaborare) il calcolo dei risultati cercati

Dettagli

Appunti Modulo 2 - Microsoft Windows

Appunti Modulo 2 - Microsoft Windows www.informarsi.net Appunti Modulo 2 - Microsoft Windows Sistema operativo Il sistema operativo, abbreviato in SO (in inglese OS, "operating system") è un particolare software, installato su un sistema

Dettagli

'LVSHQVD :LQGRZV GL0&ULVWLQD&LSULDQL

'LVSHQVD :LQGRZV GL0&ULVWLQD&LSULDQL 'LVSHQVD 'L :LQGRZV GL0&ULVWLQD&LSULDQL ',63(16$',:,1'2:6,QWURGX]LRQH Windows 95/98 è un sistema operativo con interfaccia grafica GUI (Graphics User Interface), a 32 bit, multitasking preempitive. Sistema

Dettagli