La piattaforma Android

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 raffaele.dinatale@dieei.unict

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. 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. 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. 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

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

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. 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

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

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

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

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

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

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

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

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

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

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

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

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

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

11/02/2015 MANUALE DI INSTALLAZIONE DELL APPLICAZIONE DESKTOP TELEMATICO VERSIONE 1.0 11/02/2015 MANUALE DI INSTALLAZIONE DELL APPLICAZIONE DESKTOP TELEMATICO VERSIONE 1.0 PAG. 2 DI 38 INDICE 1. PREMESSA 3 2. SCARICO DEL SOFTWARE 4 2.1 AMBIENTE WINDOWS 5 2.2 AMBIENTE MACINTOSH 6 2.3 AMBIENTE

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

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

NOTE OPERATIVE. Prodotto Inaz Download Manager. Release 1.3.0

NOTE OPERATIVE. Prodotto Inaz Download Manager. Release 1.3.0 Prodotto Inaz Download Manager Release 1.3.0 Tipo release COMPLETA RIEPILOGO ARGOMENTI 1. Introduzione... 2 2. Architettura... 3 3. Configurazione... 4 3.1 Parametri di connessione a Internet... 4 3.2

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

Il web server Apache Lezione n. 3. Introduzione

Il web server Apache Lezione n. 3. Introduzione Procurarsi ed installare il web server Apache Introduzione In questa lezione cominciamo a fare un po di pratica facendo una serie di operazioni preliminari, necessarie per iniziare a lavorare. In particolar

Dettagli

MANUALE D'USO DEL PROGRAMMA IMMOBIPHONE

MANUALE D'USO DEL PROGRAMMA IMMOBIPHONE 1/6 MANUALE D'USO DEL PROGRAMMA IMMOBIPHONE Per prima cosa si ringrazia per aver scelto ImmobiPhone e per aver dato fiducia al suo autore. Il presente documento istruisce l'utilizzatore sull'uso del programma

Dettagli

IRSplit. Istruzioni d uso 07/10-01 PC

IRSplit. Istruzioni d uso 07/10-01 PC 3456 IRSplit Istruzioni d uso 07/10-01 PC 2 IRSplit Istruzioni d uso Indice 1. Requisiti Hardware e Software 4 1.1 Requisiti Hardware 4 1.2 Requisiti Software 4 2. Installazione 4 3. Concetti fondamentali

Dettagli

Manuale Amministratore Legalmail Enterprise. Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise

Manuale Amministratore Legalmail Enterprise. Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise Manuale Amministratore Legalmail Enterprise Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise Pagina 2 di 16 Manuale Amministratore Legalmail Enterprise Introduzione a Legalmail Enterprise...3

Dettagli

Capitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti

Capitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti Capitolo 3 L applicazione Java Diagrammi ER Dopo le fasi di analisi, progettazione ed implementazione il software è stato compilato ed ora è pronto all uso; in questo capitolo mostreremo passo passo tutta

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

GHPPEditor è un software realizzato per produrre in modo rapido e guidato un part program per controlli numerici Heidenhain.

GHPPEditor è un software realizzato per produrre in modo rapido e guidato un part program per controlli numerici Heidenhain. *+33(GLWRU GHPPEditor è un software realizzato per produrre in modo rapido e guidato un part program per controlli numerici Heidenhain. Il programma si basa su un architettura di tasti funzionali presenti

Dettagli

Direzione Centrale per le Politiche dell Immigrazione e dell Asilo

Direzione Centrale per le Politiche dell Immigrazione e dell Asilo Direzione Centrale per le Politiche dell Immigrazione e dell Asilo Sistema inoltro telematico domande di nulla osta, ricongiungimento e conversioni Manuale utente Versione 2 Data creazione 02/11/2007 12.14.00

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

Registratori di Cassa

Registratori di Cassa modulo Registratori di Cassa Interfacciamento con Registratore di Cassa RCH Nucleo@light GDO BREVE GUIDA ( su logiche di funzionamento e modalità d uso ) www.impresa24.ilsole24ore.com 1 Sommario Introduzione...

Dettagli

ATOLLO BACKUP GUIDA INSTALLAZIONE E CONFIGURAZIONE

ATOLLO BACKUP GUIDA INSTALLAZIONE E CONFIGURAZIONE ATOLLO BACKUP GUIDA INSTALLAZIONE E CONFIGURAZIONE PREMESSA La presente guida è da considerarsi come aiuto per l utente per l installazione e configurazione di Atollo Backup. La guida non vuole approfondire

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

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

1 2 Fase di autenticazione utente

1 2 Fase di autenticazione utente DInG my Dates di Andrea Dignani DinG my Dates è una applicazione di tipo Reminder, ovvero una app in grado di segnalare in un determinato istante di tempo all' utente un certo avvenimento/evento accaduto

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

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

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

Versione 2.0. Manuale d uso. Software per la gestione. degli applicativi Bticino. TiManager 03/07-01 PC

Versione 2.0. Manuale d uso. Software per la gestione. degli applicativi Bticino. TiManager 03/07-01 PC Versione 2.0 03/07-01 PC Manuale d uso TiManager Software per la gestione degli applicativi Bticino TiManager INDICE 2 1. Requisiti Hardware e Software Pag. 4 2. Installazione Pag. 4 3. Concetti fondamentali

Dettagli

MODULO STAMPA BOLLETTINO PDF

MODULO STAMPA BOLLETTINO PDF MODULO STAMPA BOLLETTINO PDF MODULO STAMPA BOLLETTINO PDF pagina 2 di 7 INTRODUZIONE Il modulo STAMPA BOLLETTINO PDF è una applicazione stand-alone, sviluppata in linguaggio Java, che permette di produrre

Dettagli

Visual basic base Lezione 01. L'ambiente di sviluppo

Visual basic base Lezione 01. L'ambiente di sviluppo L'ambiente di sviluppo L'ambiente di sviluppo Visual basic è un linguaggio di programmazione Microsoft. In questo corso prenderemo in considerazione, l'ultima versione. net di questo linguaggio. Microsoft

Dettagli

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

Istruzioni per l installazione del software per gli esami ICoNExam (Aggiornate al 15/01/2014) Istruzioni per l installazione del software per gli esami ICoNExam (Aggiornate al 15/01/2014) Il software per gli esami ICON può essere eseguito su qualunque computer dotato di Java Virtual Machine aggiornata.

Dettagli

. A primi passi con microsoft a.ccepss SommarIo: i S 1. aprire e chiudere microsoft access Start (o avvio) l i b tutti i pro- grammi

. A primi passi con microsoft a.ccepss SommarIo: i S 1. aprire e chiudere microsoft access Start (o avvio) l i b tutti i pro- grammi Capitolo Terzo Primi passi con Microsoft Access Sommario: 1. Aprire e chiudere Microsoft Access. - 2. Aprire un database esistente. - 3. La barra multifunzione di Microsoft Access 2007. - 4. Creare e salvare

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

GateManager. 1 Indice. tecnico@gate-manager.it

GateManager. 1 Indice. tecnico@gate-manager.it 1 Indice 1 Indice... 1 2 Introduzione... 2 3 Cosa vi serve per cominciare... 2 4 La Console di amministrazione... 2 5 Avviare la Console di amministrazione... 3 6 Come connettersi alla Console... 3 7 Creare

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

Manuale LiveBox WEB ADMIN. http://www.liveboxcloud.com

Manuale LiveBox WEB ADMIN. http://www.liveboxcloud.com 2014 Manuale LiveBox WEB ADMIN http://www.liveboxcloud.com LiveBox Srl non rilascia dichiarazioni o garanzie in merito al contenuto o uso di questa documentazione e declina qualsiasi garanzia espressa

Dettagli

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche Software di sistema e software applicativo I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche Software soft ware soffice componente è la parte logica

Dettagli

Il calendario di Windows Vista

Il calendario di Windows Vista Il calendario di Windows Vista Una delle novità introdotte in Windows Vista è il Calendario di Windows, un programma utilissimo per la gestione degli appuntamenti, delle ricorrenze e delle attività lavorative

Dettagli

Guida all uso di Java Diagrammi ER

Guida all uso di Java Diagrammi ER Guida all uso di Java Diagrammi ER Ver. 1.1 Alessandro Ballini 16/5/2004 Questa guida ha lo scopo di mostrare gli aspetti fondamentali dell utilizzo dell applicazione Java Diagrammi ER. Inizieremo con

Dettagli

Tools For Autism 1.0. Manuale d uso

Tools For Autism 1.0. Manuale d uso Tools For Autism 1.0 Manuale d uso Introduzione L applicazione per tablet Android Tools For Autism consente la creazione, visualizzazione e modifica di due strumenti didattici quali le storie sociali e

Dettagli

BMSO1001. Virtual Configurator. Istruzioni d uso 02/10-01 PC

BMSO1001. Virtual Configurator. Istruzioni d uso 02/10-01 PC BMSO1001 Virtual Configurator Istruzioni d uso 02/10-01 PC 2 Virtual Configurator Istruzioni d uso Indice 1. Requisiti Hardware e Software 4 1.1 Requisiti Hardware 4 1.2 Requisiti Software 4 2. Concetti

Dettagli

CONTENUTI 1. INTRODUZIONE...3 2. CONCETTI BASICI SU EQUINOX CMS XPRESS...5 3. ACCESSO A EQUINOX CMS XPRESS...9 4. PAGINA D INIZIO...

CONTENUTI 1. INTRODUZIONE...3 2. CONCETTI BASICI SU EQUINOX CMS XPRESS...5 3. ACCESSO A EQUINOX CMS XPRESS...9 4. PAGINA D INIZIO... CONTENUTI 1. INTRODUZIONE...3 DEFINIZIONE...3 ELEMENTI DEL SERVIZIO...3 TECNOLOGIA E OPERAZIONE...3 WORKFLOW E GRAFICO DI PROCESSI...4 2. CONCETTI BASICI SU EQUINOX CMS XPRESS...5 STRUTTURA...5 OGGETTI...5

Dettagli

Corso di Informatica (Programmazione) Lezione 6 (31 ottobre 2008)

Corso di Informatica (Programmazione) Lezione 6 (31 ottobre 2008) Corso di Informatica (Programmazione) Lezione 6 (31 ottobre 2008) Introduzione a Java: primo programma, installazione dell ambiente di sviluppo, compilazione ed esecuzione 1 Introduzione Java è un linguaggio

Dettagli

Che cos'è un modulo? pulsanti di opzione caselle di controllo caselle di riepilogo

Che cos'è un modulo? pulsanti di opzione caselle di controllo caselle di riepilogo Creazione di moduli Creazione di moduli Che cos'è un modulo? Un elenco di domande accompagnato da aree in cui è possibile scrivere le risposte, selezionare opzioni. Il modulo di un sito Web viene utilizzato

Dettagli

Come usare P-touch Transfer Manager

Come usare P-touch Transfer Manager Come usare P-touch Transfer Manager Versione 0 ITA Introduzione Avviso importante Il contenuto di questo documento e le specifiche di questo prodotto sono soggetti a modifica senza preavviso. Brother si

Dettagli

Per chi ha la Virtual Machine: avviare Grass da terminale, andando su Applicazioni Accessori Terminale e scrivere grass

Per chi ha la Virtual Machine: avviare Grass da terminale, andando su Applicazioni Accessori Terminale e scrivere grass 0_Iniziare con GRASS Avvio di Grass e creazione della cartella del Database di GRASS Per chi ha la Virtual Machine: avviare Grass da terminale, andando su Applicazioni Accessori Terminale e scrivere grass

Dettagli

Sistema operativo. Sommario. Sistema operativo...1 Browser...1. Convenzioni adottate

Sistema operativo. Sommario. Sistema operativo...1 Browser...1. Convenzioni adottate MODULO BASE Quanto segue deve essere rispettato se si vuole che le immagini presentate nei vari moduli corrispondano, con buona probabilità, a quanto apparirà nello schermo del proprio computer nel momento

Dettagli

Mac Application Manager 1.3 (SOLO PER TIGER)

Mac Application Manager 1.3 (SOLO PER TIGER) Mac Application Manager 1.3 (SOLO PER TIGER) MacApplicationManager ha lo scopo di raccogliere in maniera centralizzata le informazioni piu salienti dei nostri Mac in rete e di associare a ciascun Mac i

Dettagli

Online Help StruxureWare Data Center Expert

Online Help StruxureWare Data Center Expert Online Help StruxureWare Data Center Expert Version 7.2.7 StruxureWare Data Center ExpertDispositivo virtuale Il server StruxureWare Data Center Expert 7.2 è disponibile come dispositivo virtuale, supportato

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

STAMPA DI UNA PAGINA SEMPLICE

STAMPA DI UNA PAGINA SEMPLICE Pagina 11 copiati nel proprio sistema (disco fisso o floppy). Questa operazione è detta download o scaricamento. Il modo più semplice per effettuare un download di un file (a meno che non sia specificato

Dettagli

SOSEBI PAPERMAP2 MODULO WEB MANUALE DELL UTENTE

SOSEBI PAPERMAP2 MODULO WEB MANUALE DELL UTENTE SOSEBI PAPERMAP2 MODULO WEB MANUALE DELL UTENTE S O. S E. B I. P R O D O T T I E S E R V I Z I P E R I B E N I C U L T U R A L I So.Se.Bi. s.r.l. - via dell Artigianato, 9-09122 Cagliari Tel. 070 / 2110311

Dettagli

Architetture Applicative

Architetture Applicative Alessandro Martinelli alessandro.martinelli@unipv.it 6 Marzo 2012 Architetture Architetture Applicative Introduzione Alcuni esempi di Architetture Applicative Architetture con più Applicazioni Architetture

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

Panoramica: che cosa è necessario

Panoramica: che cosa è necessario Scheda 02 L installazione dell SDK G IOVANNI PULITI Panoramica: che cosa è necessario Per poter lavorare con applicazioni Java o crearne di nuove, il programmatore deve disporre di un ambiente di sviluppo

Dettagli

I MODULI Q.A.T. PANORAMICA. La soluzione modulare di gestione del Sistema Qualità Aziendale

I MODULI Q.A.T. PANORAMICA. La soluzione modulare di gestione del Sistema Qualità Aziendale La soluzione modulare di gestione del Sistema Qualità Aziendale I MODULI Q.A.T. - Gestione clienti / fornitori - Gestione strumenti di misura - Gestione verifiche ispettive - Gestione documentazione del

Dettagli

Il sofware è inoltre completato da una funzione di calendario che consente di impostare in modo semplice ed intuitivo i vari appuntamenti.

Il sofware è inoltre completato da una funzione di calendario che consente di impostare in modo semplice ed intuitivo i vari appuntamenti. SH.MedicalStudio Presentazione SH.MedicalStudio è un software per la gestione degli studi medici. Consente di gestire un archivio Pazienti, con tutti i documenti necessari ad avere un quadro clinico completo

Dettagli

Settaggio impostazioni tema. Cliccando nuovamente su aspetto e poi su personalizza si avrà modo di configurare la struttura dinamica della template.

Settaggio impostazioni tema. Cliccando nuovamente su aspetto e poi su personalizza si avrà modo di configurare la struttura dinamica della template. I TEMI PREDEFINITI (TEMPLATE) Scelta del tema I temi predefiniti di wordpress sono la base di un sito che usa un utente che per ragioni pratiche o per incapacità non può creare un sito usando solo codice

Dettagli

Definizione Parte del software che gestisce I programmi applicativi L interfaccia tra il calcolatore e i programmi applicativi Le funzionalità di base

Definizione Parte del software che gestisce I programmi applicativi L interfaccia tra il calcolatore e i programmi applicativi Le funzionalità di base Sistema operativo Definizione Parte del software che gestisce I programmi applicativi L interfaccia tra il calcolatore e i programmi applicativi Le funzionalità di base Architettura a strati di un calcolatore

Dettagli

POSTA ELETTRONICA Per ricevere ed inviare posta occorrono:

POSTA ELETTRONICA Per ricevere ed inviare posta occorrono: Outlook parte 1 POSTA ELETTRONICA La posta elettronica è un innovazione utilissima offerta da Internet. E possibile infatti al costo di una telefonata urbana (cioè del collegamento telefonico al nostro

Dettagli

MANUALE DI UTILIZZO: INTRANET PROVINCIA DI POTENZA

MANUALE DI UTILIZZO: INTRANET PROVINCIA DI POTENZA MANUALE DI UTILIZZO: INTRANET PROVINCIA DI POTENZA Fornitore: Publisys Prodotto: Intranet Provincia di Potenza http://www.provincia.potenza.it/intranet Indice 1. Introduzione... 3 2. I servizi dell Intranet...

Dettagli

FPf per Windows 3.1. Guida all uso

FPf per Windows 3.1. Guida all uso FPf per Windows 3.1 Guida all uso 3 Configurazione di una rete locale Versione 1.0 del 18/05/2004 Guida 03 ver 02.doc Pagina 1 Scenario di riferimento In figura è mostrata una possibile soluzione di rete

Dettagli

Manuale LiveBox WEB ADMIN. http://www.liveboxcloud.com

Manuale LiveBox WEB ADMIN. http://www.liveboxcloud.com 2014 Manuale LiveBox WEB ADMIN http://www.liveboxcloud.com LiveBox Srl non rilascia dichiarazioni o garanzie in merito al contenuto o uso di questa documentazione e declina qualsiasi garanzia espressa

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

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

A destra è delimitata dalla barra di scorrimento verticale, mentre in basso troviamo una riga complessa.

A destra è delimitata dalla barra di scorrimento verticale, mentre in basso troviamo una riga complessa. La finestra di Excel è molto complessa e al primo posto avvio potrebbe disorientare l utente. Analizziamone i componenti dall alto verso il basso. La prima barra è la barra del titolo, dove troviamo indicato

Dettagli

Guida Migrazione Posta Elettronica @uilpa.it. Operazioni da effettuare entro il 15 gennaio 2012

Guida Migrazione Posta Elettronica @uilpa.it. Operazioni da effettuare entro il 15 gennaio 2012 Guida Migrazione Posta Elettronica @uilpa.it Operazioni da effettuare entro il 15 gennaio 2012 CONTENUTI PREMESSA ACCESSO AL PROPRIO ACCOUNT SCHERMATA INIZIALE (Desktop) SALVATAGGIO CONTATTI (2) GESTIONE

Dettagli

Guida alla registrazione on-line di un DataLogger

Guida alla registrazione on-line di un DataLogger NovaProject s.r.l. Guida alla registrazione on-line di un DataLogger Revisione 3.0 3/08/2010 Partita IVA / Codice Fiscale: 03034090542 pag. 1 di 17 Contenuti Il presente documento è una guida all accesso

Dettagli

Servizio on-line di Analisi e Refertazione Elettrocardiografica

Servizio on-line di Analisi e Refertazione Elettrocardiografica Servizio on-line di Analisi e Refertazione Elettrocardiografica Guida utente Scopo del servizio... 2 Prerequisiti hardware e software... 3 Accesso all applicazione... 4 Modifica della password... 7 Struttura

Dettagli

Configurare TPTP in Eclipse e testare un applicazione

Configurare TPTP in Eclipse e testare un applicazione Configurare TPTP in Eclipse e testare un applicazione Questa guida concentra la sua attenzione sul tool TPTP (Test & Performance Tools Platform) presente nell ambiente di sviluppo Eclipse. Verrà descritta

Dettagli

Silence Please! Gestore di profili audio per smartphone Android utilizzante geolocalizzazione GPS. Carmine Benedetto Luca Laudadio

Silence Please! Gestore di profili audio per smartphone Android utilizzante geolocalizzazione GPS. Carmine Benedetto Luca Laudadio Silence Please! Gestore di profili audio per smartphone Android utilizzante geolocalizzazione GPS Carmine Benedetto Luca Laudadio Silence Please! - Descrizione Generale Silence Please! è un'applicazione

Dettagli

REVISIONI. 1.0 07 ottobre 2010 RTI Prima stesura

REVISIONI. 1.0 07 ottobre 2010 RTI Prima stesura Data: 07 ottobre 2010 Redatto da: RTI REVISIONI Rev. Data Redatto da Descrizione/Commenti 1.0 07 ottobre 2010 RTI Prima stesura Si precisa che la seguente procedura necessita, nel computer con il quale

Dettagli

ICARO Terminal Server per Aprile

ICARO Terminal Server per Aprile ICARO Terminal Server per Aprile Icaro è un software aggiuntivo per Aprile (gestionale per centri estetici e parrucchieri) con funzionalità di terminal server: gira sullo stesso pc dove è installato il

Dettagli

2.2.2.1 Identificare le diverse parti di una finestra: barra del titolo, barra dei menu, barra degli strumenti, barra di stato, barra di scorrimento.

2.2.2.1 Identificare le diverse parti di una finestra: barra del titolo, barra dei menu, barra degli strumenti, barra di stato, barra di scorrimento. Uso del computer e gestione dei file 57 2.2.2.1 Identificare le diverse parti di una finestra: barra del titolo, barra dei menu, barra degli strumenti, barra di stato, barra di scorrimento. All interno

Dettagli

Guida Software GestioneSpiaggia.it

Guida Software GestioneSpiaggia.it Caratteristiche Guida Software GestioneSpiaggia.it 1. Gestione prenotazioni articoli (ombrellone, cabina, ecc ) ed attrezzature (sdraio, lettino ecc ) 2. Visualizzazione grafica degli affitti sia giornaliera

Dettagli

STUDIUM.UniCT Tutorial per gli studenti

STUDIUM.UniCT Tutorial per gli studenti STUDIUM.UniCT Tutorial per gli studenti Studium.UniCT Tutorial Studenti v. 6 06/03/2014 Pagina 1 Sommario 1. COS È STUDIUM.UniCT... 3 2. COME ACCEDERE A STUDIUM.UniCT... 3 3. COME PERSONALIZZARE IL PROFILO...

Dettagli

Programma per l elaborazione delle buste paga. dei collaboratori domestici VERSIONE 4.0.0 01/07/2010

Programma per l elaborazione delle buste paga. dei collaboratori domestici VERSIONE 4.0.0 01/07/2010 BADANTI & COLF 4 Programma per l elaborazione delle buste paga dei collaboratori domestici MANUALE D INSTALLAZIONE VERSIONE 4.0.0 01/07/2010 LCL srl via G. Bruni, 12-14 25121 Brescia Tel. 030 2807229 Fax

Dettagli

Mon Ami 3000 Produzione base Produzione articoli con distinta base e calcolo dei fabbisogni

Mon Ami 3000 Produzione base Produzione articoli con distinta base e calcolo dei fabbisogni Prerequisiti Mon Ami 3000 Produzione base Produzione articoli con distinta base e calcolo dei fabbisogni L opzione Produzione base è disponibile per le versioni Azienda Light e Azienda Pro. Introduzione

Dettagli

Titolare del trattamento dei dati innanzi descritto è tsnpalombara.it

Titolare del trattamento dei dati innanzi descritto è tsnpalombara.it Decreto Legislativo 196/2003 Codice in materia di protezione dei dati personali COOKIE POLICY La presente informativa è resa anche ai sensi dell art. 13 del D.Lgs 196/03 Codice in materia di protezione

Dettagli

NAVIGAORA HOTSPOT. Manuale utente per la configurazione

NAVIGAORA HOTSPOT. Manuale utente per la configurazione NAVIGAORA HOTSPOT Manuale utente per la configurazione NAVIGAORA Hotspot è l innovativo servizio che offre ai suoi clienti accesso ad Internet gratuito, in modo semplice e veloce, grazie al collegamento

Dettagli

Il Programma... 3 I moduli... 3 Installazione... 3 La finestra di Login... 4 La suite dei programmi... 6 Pannello voci... 10

Il Programma... 3 I moduli... 3 Installazione... 3 La finestra di Login... 4 La suite dei programmi... 6 Pannello voci... 10 MANCA COPERTINA INDICE Il Programma... 3 I moduli... 3 Installazione... 3 La finestra di Login... 4 La suite dei programmi... 6 Pannello voci... 10 epico! è distribuito nelle seguenti versioni: epico!

Dettagli

MANUALE D USO DELLA PIATTAFORMA ITCMS

MANUALE D USO DELLA PIATTAFORMA ITCMS MANUALE D USO DELLA PIATTAFORMA ITCMS MANULE D USO INDICE 1. INTRODUZIONE... 2 2. ACCEDERE ALLA GESTIONE DEI CONTENUTI... 3 3. GESTIONE DEI CONTENUTI DI TIPO TESTUALE... 4 3.1 Editor... 4 3.2 Import di

Dettagli

MANUALE MOODLE STUDENTI. Accesso al Materiale Didattico

MANUALE MOODLE STUDENTI. Accesso al Materiale Didattico MANUALE MOODLE STUDENTI Accesso al Materiale Didattico 1 INDICE 1. INTRODUZIONE ALLA PIATTAFORMA MOODLE... 3 1.1. Corso Moodle... 4 2. ACCESSO ALLA PIATTAFORMA... 7 2.1. Accesso diretto alla piattaforma...

Dettagli

PowerPoint 2007 Le funzioni

PowerPoint 2007 Le funzioni PowerPoint 2007 Le funzioni Introduzione Cos è un ipertesto L' ipertesto è un testo organizzato in link, o collegamenti ad altre parti del testo e/o altri testi, in modo da consentire all utente di scegliere

Dettagli

Esame di Informatica CHE COS È UN FOGLIO ELETTRONICO CHE COS È UN FOGLIO ELETTRONICO CHE COS È UN FOGLIO ELETTRONICO. Facoltà di Scienze Motorie

Esame di Informatica CHE COS È UN FOGLIO ELETTRONICO CHE COS È UN FOGLIO ELETTRONICO CHE COS È UN FOGLIO ELETTRONICO. Facoltà di Scienze Motorie Facoltà di Scienze Motorie CHE COS È UN FOGLIO ELETTRONICO Una tabella che contiene parole e numeri che possono essere elaborati applicando formule matematiche e funzioni statistiche. Esame di Informatica

Dettagli

lo 2 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000

lo 2 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000 Capittol lo 2 Visualizzazione 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000 Nel primo capitolo sono state analizzate le diverse componenti della finestra di Word 2000: barra del titolo, barra dei menu,

Dettagli