Lezione 15 Location e mappe

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Lezione 15 Location e mappe"

Transcript

1 A cura di Carlo Pelliccia La diffusione delle applicazioni location-based è certamente uno dei maggiori contributi resi dalle piattaforme mobili alla storia dell informatica. Un applicazione o un servizio possono definirsi location-based quando lavorano con il posizionamento geografico dell utente e dei luoghi di suo interesse. I software di navigazione satellitare, ad esempio, sono delle applicazioni location-based, così come lo sono tutte quelle app che mostrano dove l utente si trova e cosa c è nei suoi paraggi. Sono location-based anche quelle applicazioni che permettono di interagire con i social network geolocalizzati, come Foursquare o il servizio Places di Facebook. Google è stato un pioniere dei servizi location-based: Google Maps e Google Earth hanno spianato la strada ad una nuova generazione di applicazioni basate sulla geografia e sul posizionamento. Con Android, naturalmente, Google non smette di innovare. È con l avvento dei dispositivi mobili, infatti, che le applicazioni location-based possono finalmente sfruttare a pieno tutte le potenzialità dei servizi geolocalizzati. In questa lezione scopriremo come è facile mostrare mappe, cercare luoghi ed interagire con il ricevitore GPS del telefono. Location manager e provider Gli smartphone implementano solitamente uno o più meccanismi di localizzazione dell utente. Il GPS è quello più noto ed utilizzato, ma non è l unico meccanismo disponibile. I dispositivi di ultima generazione, infatti, sono in grado di localizzare la propria posizione verificando le reti GSM e Wi-Fi disponibili nei paraggi (in questo caso si parla di localizzazione network-based). Si tratta di un meccanismo di localizzazione meno accurato rispetto al GPS, ma lo stesso affidabile quando è sufficiente conoscere l area dove si trova l utente, e non si ha bisogno di calcolare la sua posizione precisa. Android offre un interfaccia di programmazione che astrae dal meccanismo di localizzazione utilizzato in sottofondo. Tale interfaccia è offerta sotto forma di servizio di sistema. Dall interno di un attività i servizi di sistema possono essere recuperati usando il metodo getsystemservice(). Il metodo richiede in argomento l identificativo del servizio di sistema desiderato. Gli ID dei servizi di sistema sono conservati in alcune costanti. Quello per il servizio di localizzazione è riportato nella costante Global Positioning System GPS è una di quelle sigle che tutti conoscono ma pochi comprendono. GPS sta per Global Positioning System, ossia sistema di posizionamento globale. Si tratta di un sistema costituito da una serie di satelliti artificiali in orbita intorno al pianeta. Ciascun satellite trasmette ciclicamente dei messaggi verso la superficie. I messaggi contengono il segnale orario e delle informazioni sulle orbite percorse. Il ricevitore GPS ascolta questi messaggi e li elabora. In base al ritardo dei segnali e ai contenuti dei messaggi, il ricevitore è in grado di calcolare la propria distanza da ciascun satellite. Nel momento in cui il ricevitore riesce ad agganciare il segnale di quattro o più satelliti, diventa possibile applicare un calcolo matematico simile, nel principio, alla triangolazione. In questa maniera, il ricevitore può determinare la propria posizione sul globo terracqueo, esprimendola in termini di latitudine e longitudine. Più sono i satelliti di cui il dispositivo riceve il segnale, più è accurata la posizione calcolata. LOCATION_SERVICE. Il metodo getsystemservice(), una volta recuperato il servizio, lo restituisce sotto forma di semplice Object. È dunque necessario eseguire un casting verso la classe reale del servizio, che in questo caso è android.location.locationmanager. Riassumendo, dall interno di un attività, il servizio di localizzazione si recupera alla seguente maniera: LocationManager locationmanager = (LocationManager) getsystemservice(location_service); I meccanismi di localizzazione disponibili sono classificati come provider. I due provider discussi in precedenza sono identificati con due costanti:

2 LocationManager.GPS_PROVIDER Identifica il provider collegato al ricevitore GPS del telefono. LocationManager.NETWORK_PROVIDER Identifica il provider che localizza in maniera approssimativa il telefono basandosi sulle reti raggiungibili. Prima di usare uno di questi due provider, bisogna verificare che sia supportato dal telefono che esegue l applicazione. Per farlo si può richiamare il metodo getprovider() di LocationManager. Il metodo restituisce null se il provider non è disponibile, mentre restituisce un risultato di tipo android.location.locationprovider nel caso lo sia. Ad esempio: LocationProvider gpsprovider = locationmanager.getprovider(locationmanager.gps_provider); if (gpsprovider == null) { // GPS non disponibile else { // GPS disponibile Gli oggetti LocationProvider, quando disponibili, forniscono informazioni sul provider richiesto, come la sua accuratezza e le caratteristiche supportate. Dopo essersi accertati che un provider è disponibile, altrettanto importante è controllare che sia anche attivo. L utente, infatti, potrebbe averlo disabilitato dalle impostazioni del telefono. Figura 1 Dalle impostazioni di sistema è possibile abilitare o disabilitare i servizi di localizzazione integrati. Per questo bisogna sempre verificare che siano attivi, prima di utilizzarli. L abilitazione di un provider può essere controllata con il metodo isproviderenabled() di LocationManager. Ad esempio: boolean gpsenabled = locationmanager.isproviderenabled(locationmanager.gps_provider); Prima di usare uno dei due provider, quindi, è meglio controllarne lo stato, in modo da suggerire all utente di abilitarlo prima di procedere. Ancora un importante avvertimento: per utilizzare correttamente i servizi di localizzazione, è necessario che l applicazione, nel proprio manifest, richieda l uso dei permessi android.permission.access_coarse_location (per la localizzazione basata sui network) e/o android.permission.access_fine_location (per la localizzazione GPS): <?xml version="1.0" encoding="utf-8"?> <manifest...> Pagina 2

3 ... <uses-permission android:name="android.permission.access_coarse_location" /> <uses-permission android:name="android.permission.access_fine_location" />... <application...>... </application> </manifest> Dove mi trovo? Passiamo a vedere come è possibile recuperare la posizione fornita da uno dei provider previsti. Le misurazioni vengono rappresentate mediante oggetti di tipo android.location.location. I principali e più importanti metodi messi a disposizione da questa classe sono: public long gettime() Restituisce la data in cui l informazione è stata calcolata, come UNIX timestamp (il numero di millisecondi trascorsi dal 1 Gennaio 1970 alle ore 00:00:00 GMT) public double getlatitude() Restituisce la misura di latitudine. public double getlongitude() Restituisce la misura di longitudine. public boolean hasaltitude() Restituisce true se la misurazione comprende anche un dato di altitudine. public double getaltitude() Se disponibile, restituisce la misura di altitudine. public boolean hasspeed() Restituisce true se la misurazione comprende anche un dato di velocità. public float getspeed() Se disponibile, restituisce la misura di velocità. L unità di misura è m/s (metri al secondo). Una maniera semplice e diretta per ottenere una misurazione è domandarla al LocationManager, servendosi del metodo getlastknownlocation(). Il metodo richiede l ID del provider da interrogare e restituisce un oggetto Location. Ad esempio: Location location = locationmanager.getlastknownlocation(locationmanager.gps_provider); Si faccia attenzione al fatto che getlastknownlocation() non calcola la posizione del telefono nel momento in cui lo si richiama: il metodo si limita a restituire l ultima misurazione disponibile per il provider richiesto. Può accadere che un provider sia stato disabilitato in un posto e riabilitato poi a chilometri di distanza, e che quindi la sua ultima misurazione sia completamente inservibile. Per avere dati freschi da uno dei provider, gli si deve esplicitamente chiedere di inviarli non appena disponibili. Il metodo utile per farlo è: public void requestlocationupdates( String provider, long mintime, float mindistance, LocationListener listener) Pagina 3

4 Gli argomenti hanno il seguente scopo: provider è l ID del provider (ad esempio LocationManager.GPS_PROVIDER o LocationManager.NETWORK_PROVIDER). mintime è il numero di secondi minimo che deve intercorrere tra una misurazione e la successiva. Con questo parametro si può evitare che dal provider vengano troppe informazioni, chiedendo di non mandare una nuova lettura se non è passato almeno un certo numero di secondi. mindistance è la distanza minima, in metri, che deve esserci tra una misurazione e la successiva. Anche in questo caso l argomento serve per filtrare le letture del provider ed evitare che da questo vengano troppe informazioni, chiedendo di non mandare una nuova lettura se non si è riscontrato uno spostamento di un certo numero di metri. listener è l oggetto, di tipo android.location.locationlistener, su cui verranno notificate tutte le misurazioni effettuate e filtrate secondo i parametri precedenti. Ad esempio: locationmanager.requestlocationupdates(locationmanager.gps_provider, 5, 1, mylocationlistener); Con questa richiesta si sottoscrive il provider GPS e si ricevono le letture e gli eventi provenienti da questo. Le letture, in particolar modo, saranno filtrate: solo se lo spostamento equivale ad almeno un metro, e comunque non più di una notifica ogni cinque secondi. Letture ed eventi saranno segnalati sull oggetto mylocationlistener, che naturalmente deve implementare l interfaccia LocationListener. L implementazione di LocationListener richiede la definizione dei seguenti metodi: public void onstatuschanged(string provider, int status, Bundle extras) Notifica un cambio di stato nel provider in argomento. Il nuovo stato (argomento status) può essere: LocationProvider.OUT_OF_SERVICE, se il provider è andato fuori servizio; LocationProvider.TEMPORARILY_UNAVAILABLE, se il provider è diventato temporaneamente non disponibile; LocationProvider.AVAILABLE, se il provider è tornato disponibile. public void onproviderenabled(string provider) Notifica che il provider indicato in argomento è stato abilitato. public void onproviderdisabled(string provider) Notifica che il provider indicato in argomento è stato disabilitato. public void onlocationchanged(location location) Notifica la lettura di una nuova posizione. Una volta che non occorre più conoscere le misurazioni provenienti dal location provider selezionato, è meglio annullare la sottoscrizione svolta in precedenza, agendo sul LocationManager con il metodo removeupdates(): Pagina 4

5 locationmanager.removeupdates(mylocationlistener); Programmazione Android LocationDemo Forti delle nozioni appena acquisite, andiamo a realizzare un applicazione che le metta in pratica. Chiameremo l applicazione LocationDemo. Definiamone il layout nel file res/layout/main.xml: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <ScrollView android:layout_width="wrap_content" android:layout_height="wrap_content"> <TableLayout android:layout_width="wrap_content" android:layout_height="wrap_content"> <TableRow android:padding="5px"> <TextView android:text="provider" android:padding="5px" <TextView android:id="@+id/provider" android:padding="5px" </TableRow> <TableRow android:padding="5px"> <TextView android:text="disponibile" android:padding="5px" <TextView android:id="@+id/available" android:padding="5px" </TableRow> <TableRow android:padding="5px"> <TextView android:text="abilitato" android:padding="5px" <TextView android:id="@+id/enabled" android:padding="5px" </TableRow> <TableRow android:padding="5px"> <TextView android:text="timestamp" android:padding="5px" <TextView android:id="@+id/timestamp" android:padding="5px" </TableRow> <TableRow android:padding="5px"> <TextView android:text="latitudine" android:padding="5px" <TextView android:id="@+id/latitude" android:padding="5px" </TableRow> <TableRow android:padding="5px"> <TextView android:text="longitudine" android:padding="5px" <TextView android:id="@+id/longitude" android:padding="5px" </TableRow> <TableRow android:padding="5px"> <TextView android:text="altitudine" android:padding="5px" <TextView android:id="@+id/altitude" android:padding="5px" </TableRow> <TableRow android:padding="5px"> <TextView android:text="velocità" android:padding="5px" <TextView android:id="@+id/speed" android:padding="5px" </TableRow> </TableLayout> </ScrollView> </LinearLayout> Si tratta di un layout molto semplice, che realizza una tabella all interno della quale andremo ad annotare i dati provenienti dal provider GPS. Pagina 5

6 Figura 2 LocationDemo è un app che si collega al ricevitore GPS e ne mostra le letture sul display. Andiamo all attività LocationDemoActivity, che realizza la logica del progetto appena descritta: package example.locationdemo; import java.util.date; import android.app.activity; import android.location.location; import android.location.locationlistener; import android.location.locationmanager; import android.location.locationprovider; import android.os.bundle; import android.widget.textview; public class LocationDemoActivity extends Activity { private String providerid = LocationManager.GPS_PROVIDER; private LocationListener mylocationlistener = new LocationListener() { ; public void onstatuschanged(string provider, int status, Bundle extras) { if (status == LocationProvider.AVAILABLE) { settextviewvalue(r.id.available, "TRUE"); else { settextviewvalue(r.id.available, "FALSE"); public void onproviderenabled(string provider) { settextviewvalue(r.id.enabled, "TRUE"); public void onproviderdisabled(string provider) { settextviewvalue(r.id.enabled, "FALSE"); public void onlocationchanged(location location) { updatelocationdata(location); public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.main); Pagina 6

7 protected void onresume() { super.onresume(); settextviewvalue(r.id.provider, providerid); LocationManager locationmanager = (LocationManager) getsystemservice( LOCATION_SERVICE ); LocationProvider provider = locationmanager.getprovider(providerid); if (provider == null) { settextviewvalue(r.id.available, "FALSE"); else { settextviewvalue(r.id.available, "TRUE"); boolean gpsenabled = locationmanager.isproviderenabled(providerid); if (gpsenabled) { settextviewvalue(r.id.enabled, "TRUE"); else { settextviewvalue(r.id.enabled, "FALSE"); Location location = locationmanager.getlastknownlocation( LocationManager.GPS_PROVIDER ); if (location!= null) { updatelocationdata(location); locationmanager.requestlocationupdates(providerid, 5, 1, mylocationlistener); protected void onpause() { super.onpause(); LocationManager locationmanager = (LocationManager) getsystemservice( LOCATION_SERVICE ); locationmanager.removeupdates(mylocationlistener); private void settextviewvalue(int textviewid, String value) { TextView textview = (TextView) findviewbyid(textviewid); textview.settext(value); private void updatelocationdata(location location) { Date timestamp = new Date(location.getTime()); settextviewvalue(r.id.timestamp, timestamp.tostring()); double latitude = location.getlatitude(); settextviewvalue(r.id.latitude, String.valueOf(latitude)); double longitude = location.getlongitude(); settextviewvalue(r.id.longitude, String.valueOf(longitude)); if (location.hasaltitude()) { double altitude = location.getaltitude(); settextviewvalue(r.id.altitude, String.valueOf(altitude)); if (location.hasspeed()) { float speed = location.getspeed(); settextviewvalue(r.id.speed, String.valueOf(speed)); È importante osservare come l utilizzo del servizio di localizzazione sia stato collegato al ciclo di vita dell attività: si sono utilizzati i metodi onresume() e onpause(), rispettivamente, per avviare ed interrompere l utilizzo del servizio. In questa maniera il localizzatore viene invocato solo quando l attività sta occupando il display, e non quando gira in sottofondo. Non resta che mettere tutto insieme in AndroidManifest.xml: <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android=" android:versioncode="1" android:versionname="1.0" package="example.locationdemo"> <uses-permission android:name="android.permission.access_fine_location" /> Pagina 7

8 <application <activity android:name=".locationdemoactivity" <intent-filter> <action android:name="android.intent.action.main" /> <category android:name="android.intent.category.launcher" /> </intent-filter> </activity> </application> </manifest> Emulare il GPS Quando si sviluppa un applicazione location-based, come l esempio appena illustrato, ci si scontra con il problema di come eseguirne il test ed il debug. Naturalmente è possibile installare l applicazione su uno smartphone ed andare a farsi un giro a piedi o in automobile, tuttavia questa non è la maniera migliore per test frequenti e debug efficaci. Per nostra fortuna è possibile impostare delle false coordinate geografiche sull emulatore fornito con l SDK. Con Eclipse lo si fa dalla scheda Emulator Control della prospettiva DDMS. È possibile fornire coordinate semplici, oppure caricarne una lista complessa da file di tipo GPX e KML. Figura 3 Con l Emulator Control di Eclipse DDMS è possibile inviare all emulatore false coordinate di localizzazione. Attenzione: se le coordinate inviate tramite l Emulator Control di Eclipse DDMS non funzionano correttamente, provate a chiudere l ambiente e a riavviarlo dopo aver aggiunto le seguenti righe al file eclipse.ini presente nella cartelle di installazione del vostro Eclipse: -Duser.country=US -Duser.language=en Coordinate GPS da riga di comando Se non utilizzate Eclipse, potete fornire false coordinate GPS all emulatore usando la riga di comando. Aprite il prompt dei comandi e connettetevi all emulatore via telnet: telnet localhost <porta> La porta usata dall emulatore è riportata nel titolo della finestra che lo contiene. In genere è 5554 o una cifra molto simile. Lanciate ora il comando: geo fix <longitude> <latitude> Ad esempio: Google Play services per Android geo fix Finora abbiamo appreso come accedere al servizio di localizzazione di Android per conoscere la posizione dell utente, ma questo è soltanto l inizio. Una vera e propria applicazione location-based, infatti, fa anche uso di mappe e di altri servizi analoghi. Poiché questo è un terreno in cui Google gioca in casa, abbiamo a nostra disposizione un ottima libreria di classi per l accesso facilitato ai servizi location-based di Mountain View. L accesso a questi servizi è mediato da una serie di classi comprese all interno di una libreria extra chiamata Google Play services. Le libreria non è parte integrante del sistema, e per questo, prima di utilizzarla, è necessario scaricarla ed integrarla nel proprio Android SDK. Potete farlo avviando il Pagina 8

9 manager del vostro Android SDK ed individuando, nel gruppo Extras, la voce Google Play services. Figura 4 La libreria Google Play services può essere scaricata ed installata usando l Android SDK Manager. Se il pacchetto è Not installed, selezionato e procedete con il download e l installazione. Progetto libreria Dopo aver installato la libreria di Google Play services, tornate alla schermata principale di Eclipse, selezionate la voce di menù File» Import e scegliete l opzione Android» Existing Android Code into Workspace. Figura 5 Avviate la procedura di import di codice Android esistente, selezionando la voce Android» Existing Android Code into Workspace. Così facendo, sarà avviata la procedura di import di codice Android pronto all uso all interno del workspace di Eclipse. Al passo successivo vi sarà chiesto il percorso del progetto da importare. Specificate il percorso che corrisponde, nel vostro caso specifico, a questo pattern: <android sdk>/extras/google/google_play_services/libproject Verrà caricata la lista dei progetti Android riconosciuta al percorso indicato. Dovrebbe quindi comparire la voce google-play-services_lib. Selezionatela. Attivate anche l opzione Copy projects into workspace e confermate il tutto con il tasto Finish. Pagina 9

10 Figura 6 Come Root Directory, impostate il percorso /extras/google/google_play_services/libproject all interno della vostra installazione dell Android SDK, quindi selezionate il progetto google-play-services_lib ed attivate l opzione Copy projects into workspace. Appena importato, il progetto google-play-services_lib potrebbe presentare qualche errore di compilazione. Di solito avviene perché non è abbinato alla stessa versione di Android che state utilizzando per lo sviluppo delle vostre app. Non fatevi prendere dal panico: potete risolvere facilmente aprendo le proprietà del progetto, selezionando la scheda Android ed impostando nel riquadro Project Build Target la vostra immagine di riferimento del sistema operativo. Google Maps API Key Ancora un passo ci separa dal poter scrivere app capaci di mostrare una mappa: abbiamo bisogno di ottenere una chiave (API key) per l accesso al servizio Google Maps. Per farlo dobbiamo fornire a Google l impronta SHA1 del certificato che utilizziamo per firmare le nostre applicazioni. Eclipse ci può fornire la firma del certificato di debug. La troviamo in una maschera delle preferenze, al percorso Android» Build. Figura 7 Eclipse mostra la forma MD5 e SHA1 del certificato di debug. Pagina 10

11 Copiate negli appunti la firma SHA1 del certificato di debug. Con il browser, collegatevi ora all indirizzo: Autenticatevi con la vostra utenza Google (se non siete già autenticati) ed usate il menù sulla sinistra per creare un nuovo API Project. Figura 8 Create un nuovo API Project, da associare poi al vostro progetto Android. Chiamate il progetto come l applicazione che ci accingiamo a realizzare, cioè MapsDemo. Selezionate la voce Services. Vi sarà presentato il lunghissimo elenco dei servizi per i quali Google offre una API. Localizzate la voce Google Maps Android API v2 ed abilitatela. Dovrete accettare le condizioni del servizio. Figura 9 Nella sezione services abilitate la voce Google Maps Android API v2. Selezionate ora la voce di menù API Access. Da qui azionate il tasto Create new Android key. Nella maschera di creazione della chiave vi sarà richiesto di inserire una o più righe con la firma SHA1 del certificato ed il package delle app che volete abilitare all uso delle API. Usate il carattere punto e virgola per separare i due elementi, ad esempio: BF:4F:BB:40:3C:C9:16:DD:5C:98:2C:E5:36:B5:F8:AA:30:82:FF:48;example.mapsdemoì Pagina 11

12 Figura 10 Inserite il package dell app Android per la quale si sta generando la chiave. È possibile registrare più certificati o più app: basta usare più di una riga. Se avete un certificato di rilascio, ad esempio, inserite in una seconda riga anche la firma SHA1 di quest ultimo. Android ve la può visualizzare durante la procedura di export di un APK firmato con tale certificato. Ad operazione completata, avrete una nuova entry di tipo Key for Android apps nella lista API Access. Copiate e conservate il valore API key riportato al suo interno. Figura 11 La nuova API key è stata generata e può ora essere utilizzata con l app Android. Configurare l app Possiamo finalmente creare un applicazione Android capace di sfruttare la libreria di Google Maps. In Eclipse, create un nuovo progetto. Chiamatelo MapsDemo, e come package di riferimento mettete example.mapsdemo. Subito dopo averlo creato, visualizzatene le proprietà. Nella sezione Android aggiungete una dipendenza da libreria. Lo si può fare dalla porzione Library, con il tasto Add. Scegliete la libreria importata in precedenza e confermate. Figura 12 Un progetto Android, per sfruttare una libreria importata nel workspace, deve referenziarla esplicitamente nella sezione Android» Library delle proprie preferenze. Pagina 12

13 Prima di passare al codice XML e Java, dobbiamo adesso aggiungere un paio di cose al manifest dell applicazione. La prima aggiunta da fare riguarda i permessi. Per utilizzate le API di Google Maps dobbiamo creare un permesso apposito, e poi dichiararne esplicitamente l uso: <permission android:name="example.mapsdemo.permission.maps_receive" android:protectionlevel="signature" /> <uses-permission android:name="example.mapsdemo.permission.maps_receive" /> Il permesso creato ha un nome che segue la nomenclatura: <app package>.permission.maps_receive È importante creare ed utilizzare questo tipo di permesso, in quanto i Google Play services e le Google Maps API, per funzionare, si relazionano con le app Play Store e Google Maps (che, infatti, devono essere presenti nel sistema affinché tutto ciò funzioni). La dichiarazione di questo permesso aggiuntivo permette una corretta e sicura comunicazione tra la nostra app e quelle di Google. L accesso alle mappe di Google richiede poi i seguenti permessi: <uses-permission android:name="android.permission.internet" /> <uses-permission android:name="android.permission.access_network_state" /> <uses-permission android:name="android.permission.write_external_storage" /> <uses-permission android:name="com.google.android.providers.gsf.permission.read_gservices" /> <uses-permission android:name="android.permission.access_coarse_location" /> <uses-permission android:name="android.permission.access_fine_location" /> Il rendering delle mappe richiede poi l uso di OpenGL ES versione 2, di cui non tutti i dispositivi Android sono dotati (alcuni vecchi telefoni potrebbero non supportare questa versione). Perciò aggiungiamo anche l elemento: <uses-feature android:glesversion="0x " android:required="true" /> Ultima operazione da compiere sul manifest è l inserimento della API key generata pochi minuti fa. Va inserita come ultimo elemento della sezione <application> (subito prima di </application>), alla seguente maniera: <meta-data android:name="com.google.android.maps.v2.api_key" android:value="<api KEY QUI>" /> Ricapitoliamo l intero AndroidManifest.xml dell app MapsDemo, dove ogni cosa è stata sistemata al posto giusto: <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android=" package="example.mapsdemo" android:versioncode="1" android:versionname="1.0" > <uses-sdk android:minsdkversion="8" android:targetsdkversion="17" /> <permission android:name="example.mapsdemo.permission.maps_receive" android:protectionlevel="signature" /> Pagina 13

14 <uses-permission android:name="example.mapsdemo.permission.maps_receive" /> <uses-permission android:name="android.permission.internet" /> <uses-permission android:name="android.permission.access_network_state" /> <uses-permission android:name="android.permission.write_external_storage" /> <uses-permission android:name="com.google.android.providers.gsf.permission.read_gservices" /> <uses-permission android:name="android.permission.access_coarse_location" /> <uses-permission android:name="android.permission.access_fine_location" /> <uses-feature android:glesversion="0x " android:required="true" /> <application android:allowbackup="true" > <activity android:name="example.mapsdemo.mainactivity" > <intent-filter> <action android:name="android.intent.action.main" /> <category android:name="android.intent.category.launcher" /> </intent-filter> </activity> <meta-data android:name="com.google.android.maps.v2.api_key" android:value="your_api_key" /> </application> </manifest> MapView Siamo finalmente pronti a scrivere quel (poco) codice necessario per includere una mappa all interno della nostra app dimostrativa MapsDemo. A tal scopo, le Google Maps API per Android espongono un apposito widget MapView (nel package com.google.android.gms.maps), che può facilmente essere inserito in qualunque layout. Usando un layout XML, ad esempio il file activity_main.xml del nostro progetto, possiamo fare alla seguente maniera: <RelativeLayout xmlns:android=" xmlns:tools=" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".mainactivity" > <com.google.android.gms.maps.mapview android:id="@+id/map" android:layout_width="match_parent" android:layout_height="match_parent" /> </RelativeLayout> A questo punto, il layout può essere caricato all interno di una Activity, ad esempio la MainActivity del nostro progetto MapsDemo. Dopo averlo caricato, si deve sempre recuperare il riferimento all oggetto MapView contenuto al suo interno e conservarlo a livello di istanza. Affinché la mappa venga visualizzata correttamente, infatti, è necessario che l oggetto MapView venga messo a conoscenza degli eventi oncreate(), ondestroy(), onresume(), onpause() e opzionalmente anche onsaveinstancestate() previsti da Activity: package example.mapsdemo; import com.google.android.gms.maps.mapview; import android.app.activity; import android.os.bundle; Pagina 14

15 public class MainActivity extends Activity { private MapView mmapview; protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); mmapview = (MapView) findviewbyid(r.id.map); mmapview.oncreate(savedinstancestate); protected void onresume() { super.onresume(); mmapview.onresume(); protected void onpause() { super.onpause(); mmapview.onpause(); MapFragment Un alternativa a MapView è MapFragment, che incorpora le mappe di Google all interno di un Fragment. Il vantaggio è che non c è bisogno di collegare il ciclo di vita della activity con quello della mappa: i fragment lo fanno già da soli. Lo svantaggio è che i fragment sono disponibili solo a partire da Android 3.0, e quindi usandoli si diminuisce la compatibilità dell applicazione. Esiste però un pacchetto JAR di compatibilità che permette di usare i fragment su qualunque versione di Android. Per saperne di più sui fragment: fragments.html protected void ondestroy() { super.ondestroy(); mmapview.ondestroy(); protected void onsaveinstancestate(bundle outstate) { super.onsaveinstancestate(outstate); mmapview.onsaveinstancestate(outstate); Potete lanciare l applicazione: poche righe di codice (praticamente nessuna, abbiamo svolto quasi esclusivamente operazioni di configurazione e collegamento) sono bastate per avere Google Maps all interno dell app. Figura 13 La mappa è completamente funzionale, l utente può interagire con essa attraverso i comandi incorporati. Pagina 15

16 Configurare le mappe Lavorando sul tag XML che incorpora una MapView all interno di un layout, è possibile configurare numerosissimi aspetti della mappa che ci si accinge a visualizzare. Il tag MapView, infatti, prevede una serie di attributi aggiuntivi. Per averli a disposizione, bisogna anzitutto includere il namespace corrispondente, alla seguente maniera: <com.google.android.gms.maps.mapview xmlns:map=" android:id="@+id/map" android:layout_width="match_parent" android:layout_height="match_parent" /> Così facendo, diventa possibile utilizzare gli attributi specifici di MapView, usando il prefisso map. Ad esempio: map:maptype="normal" Diamo un occhiata agli attributi aggiuntivi ora a disposizione: maptype. Stabilisce il tipo di mappa visualizzata. I valori validi sono: none (nessuna mappa), normal (mappa normale geometrica con scritte), hybrid (mappa satellitare con un layer di scritte), satellite (mappa satellitare senza scritte) e terrain (mappa dei rilievi). cameratargetlat, cameratargetlng, camerazoom, camerabearing, cameratilt. Questi attributi controllano la posizione iniziale della camera, determinando la porzioni di mappa visualizzata. uizoomcontrols, uicompass. Accettano valori booleani (true o false) che indicano, rispettivamente, se sulla mappa devono essere visualizzati i controlli per lo zoom e la bussola. uizoomgestures, uiscrollgestures, uirotategestures, uitiltgestures. Accettano valori booleani che indicano quali gesture sono abilitate. Ad esempio: <com.google.android.gms.maps.mapview xmlns:map=" android:id="@+id/map" android:layout_width="match_parent" android:layout_height="match_parent" map:camerabearing="0" map:cameratargetlat=" " map:cameratargetlng=" " map:cameratilt="30" map:camerazoom="10" map:maptype="hybrid" map:uicompass="true" map:uirotategestures="false" map:uiscrollgestures="true" map:uitiltgestures="true" map:uizoomcontrols="false" map:uizoomgestures="true" /> Controllare le mappe Cerchiamo adesso di fare qualcosa in più, cioè controllare dinamicamente, da codice Java, quello che il componente di Google Maps mostra all utente. Per farlo, cominciamo dal riferimento di tipo Pagina 16

17 MapView già a nostra disposizione. Da esso, grazie al metodo getmap(), possiamo cavare fuori un oggetto com.google.android.gms.maps.googlemap: GoogleMap map = (GoogleMap) mmapview.getmap(); La classe GoogleMap permette un controllo molto fine della mappa visualizzata all interno del componente. Una prima cosa che possiamo farci, è accendere la visualizzazione della posizione attuale dell utente, grazie al metodo setmylocationenabled(): map.setmylocationenabled(true); Così facendo, la posizione dell utente verrà evidenziata sulla mappa, attraverso un apposito pallino di colore blu. Possiamo anche aggiungere dei marcatori in dei punti di interesse che vogliamo evidenziare all utente. Ad esempio: MarkerOptions marker = new MarkerOptions(); marker.position(new LatLng( , )); marker.title("università"); marker.snippet("facoltà di informatica"); map.addmarker(marker); In questo modo, si aggiunge alla mappa un marker alla posizione (41,853069, 12, ), con titolo Università e breve descrizione Facoltà di informatica. Figura 14 Mappa ibrida con un marker. Altri metodi consentono un controllo ancora più fine, ed un disegno di dettaglio. La documentazione completa è disponibile all indirizzo: Pagina 17

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 Localizzazione utente

Sistemi Mobili e Wireless Android Localizzazione utente Sistemi Mobili e Wireless Android Localizzazione utente Stefano Burigat Dipartimento di Matematica e Informatica Università di Udine www.dimi.uniud.it/burigat stefano.burigat@uniud.it Localizzazione utente

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

Eclipse - Nozioni Base

Eclipse - Nozioni Base Eclipse - Nozioni Base Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it

Dettagli

Office 2007 Lezione 02. Le operazioni più

Office 2007 Lezione 02. Le operazioni più Le operazioni più comuni Le operazioni più comuni Personalizzare l interfaccia Creare un nuovo file Ieri ci siamo occupati di descrivere l interfaccia del nuovo Office, ma non abbiamo ancora spiegato come

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

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

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

PROGETTO PER LA TRASMISSIONE DOCUMENTI RELATIVI ALL APPROVAZIONE DELLE MANIFESTAZIONI IN FORMA DIGITALE

PROGETTO PER LA TRASMISSIONE DOCUMENTI RELATIVI ALL APPROVAZIONE DELLE MANIFESTAZIONI IN FORMA DIGITALE PROGETTO PER LA TRASMISSIONE DOCUMENTI RELATIVI ALL APPROVAZIONE DELLE MANIFESTAZIONI IN FORMA DIGITALE L approvazione di una manifestazione nazionale od internazionale comporta spesso la trasmissione

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

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

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

BDCC : Guida rapida all utilizzo

BDCC : Guida rapida all utilizzo BDCC : Guida rapida all utilizzo 1 Sommario 1. Funzionamento del sistema... 3 1.1 Cos è e cosa contiene la BDCC... 3 1.2 Meccanismi di funzionamento della BDCC... 3 1.3 Organizzazione di contenuti all

Dettagli

www.filoweb.it STAMPA UNIONE DI WORD

www.filoweb.it STAMPA UNIONE DI WORD STAMPA UNIONE DI WORD Molte volte abbiamo bisogno di stampare più volte lo stesso documento cambiando solo alcuni dati. Potremmo farlo manualmente e perdere un sacco di tempo, oppure possiamo ricorrere

Dettagli

Utilizzo della Intranet, forum privati Soci e Staff

Utilizzo della Intranet, forum privati Soci e Staff Utilizzo della Intranet, forum privati Soci e Staff Se durante la registrazione ad Associazioni Milano avete fatto richiesta del servizio denominato Intranet, questo sarà subito disponibile già a partire

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

FtpZone Guida all uso

FtpZone Guida all uso FtpZone Guida all uso La presente guida ha l obiettivo di spiegare le modalità di utilizzo del servizio FtpZone fornito da E-Mind Srl. All attivazione del servizio E-Mind fornirà solamente un login e password

Dettagli

Guida informatica per l associazione #IDEA

Guida informatica per l associazione #IDEA Guida informatica per l associazione #IDEA Questa guida vi spiegherà come utilizzare al meglio gli strumenti informatici che utilizza l associazione #IDEA in modo da facilitare il coordinamento con tutti

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

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

Invio SMS. DM Board ICS Invio SMS

Invio SMS. DM Board ICS Invio SMS Invio SMS In questo programma proveremo ad inviare un SMS ad ogni pressione di uno dei 2 tasti della DM Board ICS. Per prima cosa creiamo un nuovo progetto premendo sul pulsante (Create new project): dove

Dettagli

Guida alla configurazione della posta elettronica dell Ateneo di Ferrara sui più comuni programmi di posta

Guida alla configurazione della posta elettronica dell Ateneo di Ferrara sui più comuni programmi di posta Guida alla configurazione della posta elettronica dell Ateneo di Ferrara sui più comuni programmi di posta. Configurazione Account di posta dell Università di Ferrara con il Eudora email Eudora email può

Dettagli

SOMMARIO... 3 INTRODUZIONE...

SOMMARIO... 3 INTRODUZIONE... Sommario SOMMARIO... 3 INTRODUZIONE... 4 INTRODUZIONE ALLE FUNZIONALITÀ DEL PROGRAMMA INTRAWEB... 4 STRUTTURA DEL MANUALE... 4 INSTALLAZIONE INRAWEB VER. 11.0.0.0... 5 1 GESTIONE INTRAWEB VER 11.0.0.0...

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

COME FARE UNA RICHIESTA DI ASSISTENZA ON LINE (AOL)

COME FARE UNA RICHIESTA DI ASSISTENZA ON LINE (AOL) COME FARE UNA RICHIESTA DI ASSISTENZA ON LINE (AOL) Cos è l AOL? Pag. 2 Come inviare una richiesta AOL Pag. 3 La risposta dell assistenza Pag. 5 Come rispondere ad una risposta AOL Pag. 7 Ulteriori nozioni

Dettagli

Biblioteca di Cervia NOZIONI BASE DI INFORMATICA

Biblioteca di Cervia NOZIONI BASE DI INFORMATICA Biblioteca di Cervia NOZIONI BASE DI INFORMATICA NOZIONI DI INFORMATICA Il PC è composto solitamente di tre parti principali: - Il Case, ovvero il contenitore del cuore del computer, da qui si accende

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

PROCEDURA INVENTARIO DI MAGAZZINO di FINE ESERCIZIO (dalla versione 3.2.0)

PROCEDURA INVENTARIO DI MAGAZZINO di FINE ESERCIZIO (dalla versione 3.2.0) PROCEDURA INVENTARIO DI MAGAZZINO di FINE ESERCIZIO (dalla versione 3.2.0) (Da effettuare non prima del 01/01/2011) Le istruzioni si basano su un azienda che ha circa 1000 articoli, che utilizza l ultimo

Dettagli

Product Shipping Cost Guida d'installazione ed Utilizzo

Product Shipping Cost Guida d'installazione ed Utilizzo Guida d'installazione ed Utilizzo Installazione Per installare il modulo è sufficiente copiare la cartella app del pacchetto del modulo nella cartella principale dell'installazione di Magento dove è già

Dettagli

MOCA. Modulo Candidatura. http://www.federscacchi.it/moca. moca@federscacchi.it. [Manuale versione 1.0 marzo 2013]

MOCA. Modulo Candidatura. http://www.federscacchi.it/moca. moca@federscacchi.it. [Manuale versione 1.0 marzo 2013] MOCA Modulo Candidatura http://www.federscacchi.it/moca moca@federscacchi.it [Manuale versione 1.0 marzo 2013] 1/12 MOCA in breve MOCA è una funzionalità del sito web della FSI che permette di inserire

Dettagli

Alla scoperta della nuova interfaccia di Office 2010

Alla scoperta della nuova interfaccia di Office 2010 Alla scoperta della nuova interfaccia di Office 2010 Una delle novità più eclatanti della versione 2007 era la nuova interfaccia con la barra multifunzione. Office 2010 mantiene questa filosofia di interfaccia

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

Integrazione InfiniteCRM - MailUp

Integrazione InfiniteCRM - MailUp Integrazione InfiniteCRM - MailUp La funzionalità della gestione delle campagne marketing di icrm è stata arricchita con la spedizione di email attraverso l integrazione con la piattaforma MailUp. Creando

Dettagli

Office 2007 Lezione 08

Office 2007 Lezione 08 Word: gli stili veloci e i temi Da questa lezione, iniziamo ad occuparci delle innovazioni che riguardano specificamente Word. Cominceremo parlando di stili e temi. Nella filosofia di questo nuovo Word,

Dettagli

Esercizio data base "Biblioteca"

Esercizio data base Biblioteca Rocco Sergi Esercizio data base "Biblioteca" Database 2: Biblioteca Testo dell esercizio Si vuole realizzare una base dati per la gestione di una biblioteca. La base dati conterrà tutte le informazioni

Dettagli

Airone Gestione Rifiuti Funzioni di Esportazione e Importazione

Airone Gestione Rifiuti Funzioni di Esportazione e Importazione Airone Gestione Rifiuti Funzioni di Esportazione e Importazione Airone Funzioni di Esportazione Importazione 1 Indice AIRONE GESTIONE RIFIUTI... 1 FUNZIONI DI ESPORTAZIONE E IMPORTAZIONE... 1 INDICE...

Dettagli

Progetto di Ingegneria del Software 2. SWIMv2

Progetto di Ingegneria del Software 2. SWIMv2 Progetto di Ingegneria del Software 2 2012/2013 SWIMv2 Guida di installazione Docente: Prof. Luca Mottola Davide Brambilla Antonio Caputo Paolo Caputo 1 Introduzione La piattaforma è stata sviluppata come

Dettagli

1.0 GUIDA PER L UTENTE

1.0 GUIDA PER L UTENTE 1.0 GUIDA PER L UTENTE COMINCIA FACILE Una volta effettuato il login vi troverete nella pagina Amministrazione in cui potrete creare e modificare le vostre liste. Una lista è semplicemnte un contenitore

Dettagli

MANUALE DI GESTIONE BANCA DATI INTERNET ED AREA FTP PER ESPERTI DI RAZZA

MANUALE DI GESTIONE BANCA DATI INTERNET ED AREA FTP PER ESPERTI DI RAZZA MANUALE DI GESTIONE BANCA DATI INTERNET ED AREA FTP PER ESPERTI DI RAZZA A cura di Giovanni Sleiter Indice 1. Introduzione a pagina 3 2. Richiesta abilitazione a pagina 3 3. Accesso alla Banca Dati a pagina

Dettagli

Come masterizzare dischi con Nero 11

Come masterizzare dischi con Nero 11 Come masterizzare dischi con Nero 11 Non c è dubbio che Nero è diventato un sinonimo di masterizzatore di dischi, data la lunga esperienza sul mercato. Molte persone pensano in questo programma nel momento

Dettagli

Guida all uso delle Web View su ios

Guida all uso delle Web View su ios Guida all uso delle Web View su ios Tesina per il corso di Programmazione di Sistemi Mobile Lorenzo Pellegrini Matricola: 0000653299 Cosa sono le Web View? Le web view sono componenti grafiche, integrabili

Dettagli

CdL in Medicina Veterinaria - STPA AA 2007-08

CdL in Medicina Veterinaria - STPA AA 2007-08 CdL in Medicina Veterinaria - STPA AA 2007-08 Microsoft Windows Funzionalità di un S.O. Gestione dei file Gestione dei dispositivi di ingresso/uscita Comandi per l attivazione e la gestione di programmi

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 & Configurazione Php e MySQL su Mac Os X. Php

Installazione & Configurazione Php e MySQL su Mac Os X. Php Installazione & Configurazione Php e MySQL su Mac Os X Php PHP è un linguaggio di scripting interpretato, con licenza Open Source, originariamente concepito per la realizzazione di pagine web dinamiche.

Dettagli

Blue s Hotel Pro Il software che hai sempre desiderato per il tuo Hotel!

Blue s Hotel Pro Il software che hai sempre desiderato per il tuo Hotel! Guida alla configurazione delle centrali innovaphone Versione 2.0 04-06-2006 Blue s Hotel Pro Il software che hai sempre desiderato per il tuo Hotel! Blue s Hotel Pro è la soluzione ideale per i piccoli

Dettagli

L amministratore di dominio

L amministratore di dominio L amministratore di dominio Netbuilder consente ai suoi clienti di gestire autonomamente le caselle del proprio dominio nel rispetto dei vincoli contrattuali. Ciò è reso possibile dall esistenza di un

Dettagli

Q U E S T U R A di V A R E S E Ufficio di Gabinetto

Q U E S T U R A di V A R E S E Ufficio di Gabinetto Q U E S T U R A di V A R E S E Ufficio di Gabinetto Manuale per la gestione del servizio di invio telematico delle schedine alloggiati Servizio di Invio Telematico Schedine Alloggiati Indice Inserimento

Dettagli

LCMobile Restaurant. Guida su come usare il software per palmare LCMobile Restaurant.

LCMobile Restaurant. Guida su come usare il software per palmare LCMobile Restaurant. LCMobile Restaurant Guida su come usare il software per palmare LCMobile Restaurant. Per prima cosa bisogna installare il file LCMobile-Restaurant.exe sul proprio PC dove e collegata la base del palmare.

Dettagli

Se avete domande scrivetemi a vtornar@libero.it

Se avete domande scrivetemi a vtornar@libero.it QuestionMark Il QuestionMark è un applicazione java che non richiede installazione, per avviarla bisogna fare doppio clic sul file QuestionMark.jar presente nella stessa cartella di questo file Leggimi.

Dettagli

MANUALE PARCELLA FACILE PLUS INDICE

MANUALE PARCELLA FACILE PLUS INDICE MANUALE PARCELLA FACILE PLUS INDICE Gestione Archivi 2 Configurazioni iniziali 3 Anagrafiche 4 Creazione prestazioni e distinta base 7 Documenti 9 Agenda lavori 12 Statistiche 13 GESTIONE ARCHIVI Nella

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

www.associazioni.milano.it - Il sito dedicato alle associazioni no-profit di Milano e provincia

www.associazioni.milano.it - Il sito dedicato alle associazioni no-profit di Milano e provincia Utilizzo del Forum NEWS Il forum news è stato pensato per dare ad ogni associazione la possibilità di pubblicare una pagina di novità all intero del proprio sito (scheda o pagina autocomposta). E la sezione

Dettagli

Uso di base delle funzioni in Microsoft Excel

Uso di base delle funzioni in Microsoft Excel Uso di base delle funzioni in Microsoft Excel Le funzioni Una funzione è un operatore che applicato a uno o più argomenti (valori, siano essi numeri con virgola, numeri interi, stringhe di caratteri) restituisce

Dettagli

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

Configuration Managment Configurare EC2 su AWS. Tutorial. Configuration Managment. Configurare il servizio EC2 su AWS. Pagina 1 Tutorial Configuration Managment Configurare il servizio EC2 su AWS Pagina 1 Sommario 1. INTRODUZIONE... 3 2. PROGRAMMI NECESSARI... 4 3. PANNELLO DI CONTROLLO... 5 4. CONFIGURARE E LANCIARE UN ISTANZA...

Dettagli

Come utilizzare il sito Verdeazzurroligure

Come utilizzare il sito Verdeazzurroligure Come utilizzare il sito Verdeazzurroligure Nel marzo 2016, con la nuova versione del sito Verdeazzurroligure, non solo si rinnova la grafica, ma si sviluppano nuove funzionalità che prima erano impossibili.

Dettagli

Capitolo 20: Render. Avviate MasterChef dall icona presente sul vostro Desktop.

Capitolo 20: Render. Avviate MasterChef dall icona presente sul vostro Desktop. Capitolo 20: Render Avviate MasterChef dall icona presente sul vostro Desktop. Nota: Se state utilizzando una versione dimostrativa, una volta caricato il programma, un messaggio vi comunicherà i giorni

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

File, Modifica, Visualizza, Strumenti, Messaggio

File, Modifica, Visualizza, Strumenti, Messaggio Guida installare account in Outlook Express Introduzione Questa guida riguarda di sicuro uno dei programmi maggiormente usati oggi: il client di posta elettronica. Tutti, ormai, siamo abituati a ricevere

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

Accise Settore Prodotti Alcolici Manuale d uso

Accise Settore Prodotti Alcolici Manuale d uso Olitech Informatica Telematico Accise Accise Settore Prodotti Alcolici Manuale d uso Versione del manuale: 26-01-2010 1 Indice Accise Settore Prodotti Alcolici Manuale d uso... 1 Indice... 2 Funzionalità

Dettagli

GUIDA PER LA CONNESSIONE ALLA RETE WIRELESS E ALL USO DEL SERVIZIO BERGAMO Wi-Fi

GUIDA PER LA CONNESSIONE ALLA RETE WIRELESS E ALL USO DEL SERVIZIO BERGAMO Wi-Fi GUIDA PER LA CONNESSIONE ALLA RETE WIRELESS E ALL USO DEL SERVIZIO BERGAMO Wi-Fi Requisiti necessari per l utilizzo di Bergamo Wifi: - Computer/Tablet/Smartphone dotato di interfaccia wireless - Disporre

Dettagli

PIANO DI TUTELA DELLE ACQUE DELLA SICILIA (di cui all'art. 121 del Decreto Legislativo 3 aprile 2006, n 152)

PIANO DI TUTELA DELLE ACQUE DELLA SICILIA (di cui all'art. 121 del Decreto Legislativo 3 aprile 2006, n 152) Commissario Delegato per l Emergenza Bonifiche e la Tutela delle Acque in Sicilia PIANO DI TUTELA DELLE ACQUE DELLA SICILIA (di cui all'art. 121 del Decreto Legislativo 3 aprile 2006, n 152) Sistema WEB-GIS

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

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

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

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

Cominciamo dalla barra multifunzione, ossia la struttura a schede che ha sostituito la barra dei menu e la barra delle icone (Figura 1).

Cominciamo dalla barra multifunzione, ossia la struttura a schede che ha sostituito la barra dei menu e la barra delle icone (Figura 1). La barra multifunzione La barra multifunzione e il pulsante Microsoft Office Se avete lavorato per tanti anni con la suite da ufficio Office, questa nuova versione 2007 può disorientarvi davvero molto.

Dettagli

tommaso.iacomino@gmail.com INTERNET EXPLORER Guida introduttiva CAPITOLO 1 Fig. 1

tommaso.iacomino@gmail.com INTERNET EXPLORER Guida introduttiva CAPITOLO 1 Fig. 1 INTERNET EXPLORER Guida introduttiva CAPITOLO 1 Fig. 1 IMPORTANTE: forse non visualizzate questa barra, se così fosse usiamo questa procedura: posizioniamo il cursore sulla parte vuota tasto destro del

Dettagli

Uso dei modelli/template

Uso dei modelli/template Uso dei modelli/template Il modello (o template, in inglese) non è altro che un normale file di disegno, generalmente vuoto, cioè senza alcuna geometria disegnata al suo interno, salvato con l estensione.dwt.

Dettagli

NAVIGARE FRA LE PRATICHE...

NAVIGARE FRA LE PRATICHE... Manuale veloce AUTENTICAZIONE... 3 REGISTRAZIONE... 4 NAVIGARE FRA LE PRATICHE... 5 PRATICA TELEMATICA : AVVIO... 7 PRATICA TELEMATICA : COMPILAZIONE, FIRMA DIGITALE E INVIO... 8 PRATICA TELEMATICA : COMPILAZIONE

Dettagli

Come utilizzare il nuovo HelpDesk Maggioli Informatica

Come utilizzare il nuovo HelpDesk Maggioli Informatica Come utilizzare il nuovo HelpDesk Maggioli Informatica Sommario 1. Home... 2 2. Tickets... 3 3. Nuove richieste... 3 4. Knowledge Base... 5 5. Documenti... 5 6. Referenti... 6 7. Come modificare e/o resettare

Dettagli

NUOVA PROCEDURA COPIA ED INCOLLA PER L INSERIMENTO DELLE CLASSIFICHE NEL SISTEMA INFORMATICO KSPORT.

NUOVA PROCEDURA COPIA ED INCOLLA PER L INSERIMENTO DELLE CLASSIFICHE NEL SISTEMA INFORMATICO KSPORT. NUOVA PROCEDURA COPIA ED INCOLLA PER L INSERIMENTO DELLE CLASSIFICHE NEL SISTEMA INFORMATICO KSPORT. Con l utilizzo delle procedure di iscrizione on line la società organizzatrice ha a disposizione tutti

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

I M P O S T A R E U N A C C O U N T D I P O S T A C O N M O Z I L L A T H U N D E R B I R D

I M P O S T A R E U N A C C O U N T D I P O S T A C O N M O Z I L L A T H U N D E R B I R D I M P O S T A R E U N A C C O U N T D I P O S T A C O N M O Z I L L A T H U N D E R B I R D C O N F I G U R A R E L A M A I L 1) Aperto il programma, cliccare su strumenti > impostazioni account. 2) Si

Dettagli

Tricks & Tips. [Access] Tutorial - ActiveX - Controllo Tree View. - Michele de Nittis - Versione: 1 Data Versione: venerdì 30 agosto 2002

Tricks & Tips. [Access] Tutorial - ActiveX - Controllo Tree View. - Michele de Nittis - Versione: 1 Data Versione: venerdì 30 agosto 2002 Tricks & Tips [Access] - Michele de Nittis - Tutorial - ActiveX - Controllo Tree View Versione: 1 Data Versione: venerdì 30 agosto 2002 1 SOMMARIO PREMESSA...3 INSERIMENTO DEL CONTROLLO...3 AGGIUNTA DELLE

Dettagli

GESCO MOBILE per ANDROID

GESCO MOBILE per ANDROID GESCO MOBILE per ANDROID APPLICAZIONE PER LA GESTIONE DEI DISPOSITIVI GSM GESCO aggiornamenti su www.gesco.it GUIDA ALL USO Vi ringraziamo per aver scelto la qualità dei prodotti GESCO. Scopo di questa

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

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

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

Introduzione. Descrizione. FRITZ!APP Fon

Introduzione. Descrizione. FRITZ!APP Fon FRITZ!App 1 Introduzione In questa mini-guida presenteremo una carrellata delle FRITZ!App, le applicazioni per smartphone e tablet sviluppate da AVM. Con le FRITZ!App i principali servizi di Telefonia,

Dettagli

Utilizzo del Terminalino

Utilizzo del Terminalino Utilizzo del Terminalino Tasti: - ENT: funzionano come INVIO - SCAN: per attivare il lettore di barcode - ESC: per uscire dal Menù in cui si è entrati - BKSP: per cancellare l ultimo carattere digitato

Dettagli

PSNET UC RUPAR PIEMONTE MANUALE OPERATIVO

PSNET UC RUPAR PIEMONTE MANUALE OPERATIVO Pag. 1 di 17 VERIFICHE E APPROVAZIONI VERSIONE V01 REDAZIONE CONTROLLO APPROVAZIONE AUTORIZZAZIONE EMISSIONE NOME DATA NOME DATA NOME DATA PRATESI STATO DELLE VARIAZIONI VERSIONE PARAGRAFO O DESCRIZIONE

Dettagli

HikVision. Creazione e gestione di collegamenti con sistemi TVCC HikVision DVR/Network Camera

HikVision. Creazione e gestione di collegamenti con sistemi TVCC HikVision DVR/Network Camera HikVision Creazione e gestione di collegamenti con sistemi TVCC HikVision DVR/Network Camera Febbraio 2015 2 Creazione e gestione di collegamenti con sistemi TVCC HikVision DVR/Network Camera INDICE EUREKA

Dettagli

PIATTAFORMA DOCUMENTALE CRG

PIATTAFORMA DOCUMENTALE CRG SISTEMA DI GESTIONE DOCUMENTALE DMS24 PIATTAFORMA DOCUMENTALE CRG APPLICAZIONE PER LE PROCEDURE DI GARE D AMBITO 1 AGENDA 1. Introduzione 2. I Livelli di accesso 3. Architettura di configurazione 4. Accesso

Dettagli

FINE ANNO BOLLE / FATTURE PER E/SATTO

FINE ANNO BOLLE / FATTURE PER E/SATTO FINE ANNO BOLLE / FATTURE PER E/SATTO (ver. 3 07/11/2014) Sito web:!"#$%$# e-mail istituzionale: $ &'!"#$%$# PEC:!"#$%'(")*(+*$($# % INDICE e-mail istituzionale: #&'!"#$#" PEC:!"#$'(!)*(+*#(#" & Premessa

Dettagli

Manuale Operativo per l utilizzo della piattaforma E-Learning@AQ. Versione 1.1

Manuale Operativo per l utilizzo della piattaforma E-Learning@AQ. Versione 1.1 Manuale Operativo per l utilizzo della piattaforma E-Learning@AQ Versione 1.1 Autore Antonio Barbieri, antonio.barbieri@gmail.com Data inizio compilazione 11 maggio 2009 Data revisione 14 maggio 2009 Sommario

Dettagli

Your Detecting Connection. Manuale utente. support@xchange2.net

Your Detecting Connection. Manuale utente. support@xchange2.net Your Detecting Connection Manuale utente support@xchange2.net 4901-0133-4 ii Sommario Sommario Installazione... 4 Termini e condizioni dell applicazione XChange 2...4 Configurazione delle Preferenze utente...

Dettagli

MANUALE UTENTE INFOCAR REPAIR ACCESSO SMARTPHONE/TABLET

MANUALE UTENTE INFOCAR REPAIR ACCESSO SMARTPHONE/TABLET ACCESSO SMARTPHONE/TABLET Sommario PRIMO ACCESSO SMARTPHONE/TABLET... 3 GUIDA INSTALLAZIONE APP INFOCAR REPAIR IPHONE-IPAD... 3 GUIDA PRIMO ACCESSO APP... 8 GUIDA ALL UTILIZZO APP... 11 2 PRIMO ACCESSO

Dettagli

FASI DA ESEGUIRE ON-LINE

FASI DA ESEGUIRE ON-LINE FASI DA ESEGUIRE ON-LINE a) registrazione del candidato mediante apposito link presente sul portale della Regione Basilicata e rilascio delle credenziali di accesso necessarie per procedere alla candidatura

Dettagli

Moduli (schede compilabili) in Word Esempio: scheda di alimentazione per un degente

Moduli (schede compilabili) in Word Esempio: scheda di alimentazione per un degente Moduli (schede compilabili) in Word Esempio: scheda di alimentazione per un degente Vediamo come utilizzare Word per costruire un modulo compilabile, ovvero una scheda che contenga delle parti fisse di

Dettagli

MANUALE EDICOLA 04.05

MANUALE EDICOLA 04.05 MANUALE EDICOLA 04.05 Questo è il video che si presenta avviando il programma di Gestione Edicola. Questo primo video è relativo alle operazioni di carico. CARICO Nello schermo di carico, in alto a sinistra

Dettagli

Manuale Operativo Beneficiario Sfinge2020

Manuale Operativo Beneficiario Sfinge2020 Manuale Operativo Beneficiario Sfinge2020 Pag. 1 di 20 Identificazione Edizione 1.3 Titolo SFINGE 2020 Manuale Operativo Beneficiario Tipo Manuale Utente N. Pagine 20 Diffusione o Riservata o Interna x

Dettagli

Inoltro telematico delle pratiche SUAP

Inoltro telematico delle pratiche SUAP Pagina 1 di 9 Agg.to 01 febbraio 2016_v.001 Inoltro telematico delle pratiche Come autenticarsi 1- Come cambia l invio delle pratiche Per accedere al sito regionale è necessario autenticarsi con un dispositivo

Dettagli

Excel. A cura di Luigi Labonia. e-mail: luigi.lab@libero.it

Excel. A cura di Luigi Labonia. e-mail: luigi.lab@libero.it Excel A cura di Luigi Labonia e-mail: luigi.lab@libero.it Introduzione Un foglio elettronico è un applicazione comunemente usata per bilanci, previsioni ed altri compiti tipici del campo amministrativo

Dettagli

CARICAMENTO IN ASCOT DEL FASCICOLO ELETTORALE ELETTRONICO

CARICAMENTO IN ASCOT DEL FASCICOLO ELETTORALE ELETTRONICO CARICAMENTO IN ASCOT DEL FASCICOLO ELETTORALE ELETTRONICO 1) Predisposizione della cartella con i file da caricare - Creazione della cartella - Inserimento nella cartella dei file XML - Compressione della

Dettagli

Guida in linea di Websense Secure Messaging

Guida in linea di Websense Secure Messaging Guida in linea di Websense Secure Messaging Benvenuti in Websense Secure Messaging, uno strumento che offre un portale sicuro per la trasmissione e la visualizzazione di dati riservati contenuti nelle

Dettagli

GPS MANAGER Manuale Utente

GPS MANAGER Manuale Utente GPS MANAGER Manuale Utente Introduzione GPS Manager è il software AIM che mette la tecnologia GPS al servizio del pilota. Esso permette infatti di entrare in pista e cominciare a registrare i tempi sul

Dettagli

Manuale Utente. Gestione Richieste supporto Data Warehouse. Della Ragioneria Generale dello Stato. Versione 1.0. Roma, Ottobre 2015

Manuale Utente. Gestione Richieste supporto Data Warehouse. Della Ragioneria Generale dello Stato. Versione 1.0. Roma, Ottobre 2015 Manuale Utente Gestione Richieste supporto Data Warehouse Della Ragioneria Generale dello Stato Versione 1.0 Roma, Ottobre 2015 1 Indice 1 Generalità... 3 1.1 Scopo del documento... 3 1.2 Versioni del

Dettagli