Archive for the 'google maps' Category

La mia Via degli Dei

Via degli DeiI sogni nel cassetto, a mio parere, devono essere piccoli sogni in piccoli cassettini, così ne possono essere aperti tanti durante la propria vita. Uno dei miei sogni nel cassettino era quello di percorrere la Via degli Dei, una “passeggiata” lungo l’Appennino da Bologna a Firenze, sulle orme degli antichi Romani (e probabilmente degli Etruschi). L’escursione era già stata pensata l’anno scorso e rimandata, prima attorno al 25 aprile, poi attorno al 1°maggio, per il maltempo. Quest’anno, ancora una volta, il tempo non è stato dei migliori, ma considerando che non c’erano particolari previsioni di pioggia, e che ormai mordevo il freno da quasi un anno, ho deciso di partire.

E’ stata una esperienza difficoltosa e meravigliosa allo stesso tempo. Non farò la cronistoria, sarebbe forse noiosa e inutile, senza contare che in Rete si trova di tutto. Qualche consiglio, in base alla mia personalissima esperienza,  vorrei però darlo:

Il periodo

Non credo che fine aprile sia il periodo migliore. Come dicevo, l’anno scorso ho dovuto rimandare il viaggio per le condizioni meteo avverse, e quest’anno ho trovato moltissimo fango che non mi ha certamente agevolato nel cammino. Mi sono perso anche molti panorami a causa della nebbia, e ho voluto/dovuto modificare il percorso originale per sicurezza. Forse il periodo migliore è dopo i primi quindici giorni di maggio, facendo attenzione a non chiudere la tappa al Mugello in occasione del Gran Premio perché, se non volete dormire in tenda fuori dai centri abitati, è quasi certo che non troviate un posto libero

L’allenamento

Sono un appassionato discontinuo di trekking e mi piace camminare. Da poco ho iniziato a correre qualche km (riesco a passare per un pelo il test del moribondo). Senza allenamento secondo me, specie alla mia età (45 anni) non vai da nessuna parte. Penso però che un minimo di preparazione sia sufficiente, purché, di questo ne parliamo dopo, non esageriate con il peso sulle spalle!

L’equipaggiamento

Sono partito con uno zaino che complessivamente (considerato cioè lo zaino stesso) non superava i 10 chili (io ne peso 75, anzi 73 dopo la camminata, per 1,85 di altezza). Cosa conteneva lo zaino? Tre magliette tecniche manica corta, slip, calze, una maglietta tecnica manica lunga, un giubbotto tecnico traspirante, un k-way, un pile (l’ho usato solo in albergo), scaldacollo, un coltello (mai usato ma lo ritengo uno strumento di emergenza oltre al fischietto e a qualche decimetro di corda). Più le dotazioni “classiche”: telefono, caricabatterie, usb power bank (batteria esterna per cellulare) e qualche altro oggettino. L’acqua non deve mai mancare, io ne portavo un litro e mezzo, dopo San Luca e il Parco Talon è più complicato trovare fonti.

Gli errori che ho fatto

Come dicevo sono un appassionato discontinuo di trekking per cui ritengo che non avrei dovuto commettere due grosse leggerezze:

1) Le scarpe: mi sono preparato al viaggio con un paio di scarpe (basse) ma quando ho visto le condizioni del tempo variabili ho deciso di utilizzare il classico scarponcino alto (usato nel passato) che però ho usato solo una volta prima della partenza. Non ne soffro normalmente, ma sono venute le vesciche fin dal primo giorno. Non fate il mio stesso errore.

2) La carta: avevo una guida con delle carte 1:50000, troppo poco dettagliate nel caso tu debba fronteggiare imprevisti. Avevo con me il GPS caricato con waypoint strategici, ma il GPS non era cartografico. Alla fine del primo giorno pensavo che il luogo dove avrei pernottato era a 2,5 km da me: questo però se ci fosse stata la galleria, visto che il punto si trovava dalla parte opposta di una collina! Il percorso che ho fatto non è stato quello classico, a causa delle condizioni meteo non troppo buone. A quel punto il GPS mi è servito solo come bussola. In breve, una carta 1:25000 sarebbe stata l’ideale.

Al di là di questi “imprevisti” (chi cammina per boschi sa bene quali sono i veri imprevisti) è stato un viaggio meraviglioso, tanto desiderato ancor prima che esser tanto vissuto. E’ stato bello incontrare, anche solo per poche centinaia di metri,  viandanti come me, ciascuno con le sue storie. Viandanti di cui non so neanche il nome, ma con il quale si crea un legame, una vicinanza, solo per il fatto avere il medesimo obiettivo e di condividere la stessa fatica. E la compagna di tutto il viaggio, la Natura, paesaggi diversi, pianura, golena, arenarie plioceniche, calanchi, boschi, praterie sommitali, e ancora prati, orchidee selvatiche, querce, faggi e poi cipressi quando scendi dall’altra parte. E infine la Storia, storie di commerci e di eserciti: camminare sulle orme degli antichi Romani, su (piccoli) tratti di strada quasi perfetti , 8 piedi romani, due metri e quaranta di larghezza, lastricati di pietre. Tutto questo mi rimarrà nel cuore per sempre.

Non vi voglio annoiare oltre, se siete qui, forse, è anche perché voi stessi state pianificando la via. E allora vorrei condividere con voi la cosa più importante: un percorso studiato a tavolino, con tanti waypoint, ed il percorso effettivo, la “mia” via degli dei, piena di deviazioni, di errori, di sudore, di tempo perso e di meraviglia. Due tracce da caricare sul vostro GPS, in modo da stare ancora più tranquilli.

E se andate, fatemelo sapere. Mi farete riaprire quel cassettino.

Linkografia brevissima

Mappa degli alberi monumentali del Comune di Rimini

Guida agli alberi monumentali e di pregio del Comune di RiminiVado leggermente OT (ma solo leggermente, lo capirete più avanti) rispetto agli argomenti normalmente trattati su questo blog. Da qualche anno sono una Guardia Ecologica Volontaria (GEV), una figura istituita con la Legge Regionale Emilia-Romagna n. 23 del 1989. Le GEV, tra i compiti affidatigli, promuovono la cultura ambientale e concorrono ai compiti di protezione dell’ambiente, accertando violazioni e applicando sanzioni. All’interno delle GEV di Rimini è presente un Gruppo Censimento Arboreo. Tale Gruppo ha lo scopo di cercare, all’interno del territorio provinciale riminese, gli alberi monumentali o comunque di pregio (anche in forma di filari), censirli (laddove ci siano i requisiti, la regione applica forme particolari di tutela ai sensi dell’art. 6 della Legge Regionale Emilia Romagna n. 2 del 1977) e tenerli sotto osservazione.

Ma cosa sono esattamente gli alberi monumentali? Sono quegli esemplari arborei che presentano caratteristiche eccezionali di vetustà e di connessione al territorio, che ne esaltano l’importanza, rispetto all’insieme del patrimonio arboreo di una data zona.

Nel comune di Rimini ci sono circa 42000 alberi, di circa 190 specie, e tra questi spiccano alcuni esemplari particolari. Parliamo di esemplari tra i 100 e i 300 anni, sopravvisuti alla antropizzazione selvaggia del territorio. Si tratta di alberi riconducibili a due grossi macrogruppi: querce discendenti dalla macchia mediterranea medievale e alberi di pregio anche non autoctoni ma messi a dimora secondo il gusto estetico e botanico dell’inizio del 1800.

Nel 2010 ho contribuito a una piccola pubblicazione, “Alberi monumentali e di pregio del Comune di Rimini“, ideato e realizzato con l’Assessorato alle Politiche Ambientali ed Energetiche del Comune di Rimini.

Rientro almeno parzialmente sugli argomenti di questo blog dicendo semplicemente che, a partire dai dati raccolti per quella pubblicazione, ho creato una semplicissima Google Map sulla quale sono collocati 24 esemplari arborei del Comune di Rimini, corredati da descrizione ed una piccola immagine. Per adesso è solo un punto di partenza, visto che l’idea generale è un database, anche a partire dai dati raccolti dalle istituzioni, di tutti gli alberi sottoposti a tutela della Provincia di Rimini o comuunque meritevoli di segnalazione da parte del Corpo di cui faccio parte) .

La mia speranza è che qualcuno di voi, mentre va in giro per il territorio riminese, dopo una giornata di spiaggia o in qualsiasi periodo dell’anno, prenda in mano il proprio smartphone, si connetta a Internet e attraverso questo piccolissimo lavoro possa conoscere un ulteriore aspetto della città in cui risiedo dal 2000.

La mappa è naturalmente pubblica e si trova a quest’indirizzo. Altre informazioni sulle GEV o sui patriarchi arborei le potete trovare nella breve linkografia qui sotto. Buona gita tra gli alberi!

# Guardie Ecologiche Volontarie – Rimini
# Guida ai patriarchi arborei della provincia di Rimini
# Banca dati degli alberi monumentali della Regione Emilia-Romagna

Query spaziali su Google Fusion Tables

E’ stata da poco rilasciata una nuova funzionalità per l’utilizzo delle Google Fusion Tables. L’ottimo servizio di gestione dei dati by Google da questo momento supporta anche le query spaziali!
Diverse sono le possibilità, tra cui determinare i punti di interesse che si trovano all’interno di una determinata area (rettangolare o circolare) oppure determinare il numero di elementi desiderati che si trovano nelle vicinanze di una particolare coppia di coordinate.

Stavolta la mia scelta è quella di non apportare particolari modifiche al codice riportato da Google e di farvi vedere solo uno degli esempi.
Mi sono limitato dunque a prendere dei dati già presenti in Internet (più precisamente l’indirizzo degli uffici postali presenti nella Provincia di Rimini) e li ho caricati in una Google Fusion Table, registrata all’indirizzo http://tables.googlelabs.com/DataSource?dsrcid=305567 . Il caso che vi propongo è quello di selezionare gli “n” uffici postali più vicini a un determinato punto della mappa.

Quello che è davvero interessante è che, per implementare la selezione all’interno del codice javascript, viene utilizzata una notazione “SQL-like” e quindi di facile comprensione

query: “SELECT indirizzo FROM ” + tableid + ” ORDER BY ST_DISTANCE(indirizzo, LATLNG(44.03, 12.56)) LIMIT 5″

tableid è la variabile che contiene il nome della Fusion Table, per il resto si tratta di una semplice query SQL dove i parametri sono il punto da cui calcolare le distanze (44.03, 12.56) e LIMIT, cioè il numero di punti da considerare (nel nostro caso 5)

Il codice finale è questo:

<!DOCTYPE html>

<html>
<head>
<meta name=”viewport” content=”initial-scale=1.0, user-scalable=no” />
<meta http-equiv=”content-type” content=”text/html; charset=UTF-8″/>

<style>
#map_canvas { height: 300px; width:600px; }
</style>

<script type=”text/javascript” src=”http://maps.google.com/maps/api/js?sensor=false”&gt;
<script type=”text/javascript”>

// definisce la tabella di Google Fusion da caricare

var tableid = 305567;

function initialize() {

map = new google.maps.Map(document.getElementById(‘map_canvas’), {
center: new google.maps.LatLng(44.03, 12.56),
zoom: 10,
disableDefaultUI: true,
navigationControl: true,
navigationControlOptions: {style: google.maps.NavigationControlStyle.MEDIUM},
mapTypeId: google.maps.MapTypeId.ROADMAP  });

//definisce il layer da visualizzare: la query e’ di tipo ‘Simil SQL’ e seleziona i 5 indirizzi (parametro LIMIT) più vicini al punto con coordinate 44.03 12.56
layer = new google.maps.FusionTablesLayer(tableid, {
query: “SELECT indirizzo FROM ” + tableid + ” ORDER BY ST_DISTANCE(indirizzo, LATLNG(44.03, 12.56)) LIMIT 5”  }
);
layer.setMap(map);

}
</script>
</head>
<  body onload=”initialize()”>
<div id=”map_canvas”>

</body>
</html>

mentre il risultato lo potete trovare qui.

Inutile dire che le potenzialità sono infinite. Potremmo infatti gestire come variabili sia il punto da cui calcolare le distanze (magari prendendola da un dispositivo mobile una volta impostato il parametro sensor a yes), sia il numero di markers da considerare (attraverso un FORM dal quale ricavare in input detto parametro).

Nella documentazione ufficiale Google Fusion Tables potete trovare gli altri esempi, fate qualche esperimento e… buon divertimento.

Linkografia

@ Search your geo data using spatial queries from Fusion Tables!
@ Google Fusion Table API

Geocoding con Google Maps API V3: un esempio

Scopo di questo tutorial è introdurre nella maniera più semplice possibile le funzionalità geocoding offerte dalle Google Maps V3.
Supponiamo di avere una serie di indirizzi stradali dei quali non conosciamo le coordinate. Per visualizzare tali punti sulla mappa abbiamo appunto necessità di una funzione (geocoding) che, a partire da un indirizzo in formato testo, restituisce una coppia di coordinate spaziali.
Lo script che ho realizzato, ampiamente commentato, è composto da diverse parti.

La prima parte definisce e carica due array, contenenti i dati da visualizzare sulla mappa, cioè gli indirizzi stradali e le relative descrizioni

descrizioni = new Array();
indirizzi = new Array();

//popolamento vettori

indirizzi[0]=”Viale Italia 40, La Spezia, Italia”;
descrizioni[0]=”Qui sono nato e cresciuto”;
indirizzi[1]=”via pascoli 64 la spezia italia”;
descrizioni[1]=”Qui ho fatto le elementari”;
indirizzi[2]=”Via Leopardi 1 la spezia italia”;
descrizioni[2]=”Qui ho fatto le medie”;
indirizzi[3]=”via giacomo doria 2 la spezia italia”;
descrizioni[3]=”Qui ho fatto le superiori”;

Il cuore dell’applicazione è costituito dalla funzione javascipt codifica_indirizzi, che ha come parametri in ingresso un indirizzo stradale e una descrizione da visualizzare. In uscita, il risultato della funzione è un marker (ottenuto dal geocoding dell’indirizzo stradale) con la relativa descrizione. Tale funzione viene eseguita, attraverso un ciclo iterativo FOR, tante volte quanti sono gli elementi del vettore indirizzi.

function codifica_indirizzi(indirizzi, titolo)

      {
        geocoder.geocode({ ‘address’: indirizzi}, function(results, status)
           {   map.setCenter(results[0].geometry.location);
               var marker = new google.maps.Marker
                             ({ map: map,
                                 position: results[0].geometry.location,
                               title: titolo });

                                  });

             }

La funzione principale è la funzione visualizzamappa che definisce i criteri di visualizzazione della mappa (tipo ROADMAP, livello di zoom) e attiva il ciclo di scansione dei vettori indirizzi e descrizioni.

function visualizzamappa() {
                  geocoder = new google.maps.Geocoder();
                  var opzioni = {zoom: 15, mapTypeId: 
                                 google.maps.MapTypeId.ROADMAP }
                   map = new google.maps.Map(document.getElementById
                       (“map_canvas”), opzioni);

Il risultato finale lo potete trovare qui.

Piccola digressione. La funzione geocoding utilizzata si presta molto bene a codificare indirizzi inseriti dall’utente in un piccolo form come si vede in questo esempio. Ciò accade poichè la richiesta è asincrona (i dati che ci servono sono localizzati in server)

Ho avuto qualche difficoltà nella corretta visualizzazione delle descrizioni per ogni marker. Il metodo geocode() mal si accorda a soddisfare le richieste del ciclo for .  In pratica il ciclo for incrementa il contatore avanti prima che il marker potesse comparire (senza attendere cioè il risultato della richiesta fatta al server Google dalla funzione). Grazie a un suggerimento di Napolux ho focalizzato il problema e ho trovato la soluzione, “spezzando” il codice scrivendo due funzioni.

In effetti, una maniera più elegante e corretta di codificare una serie di indirizzi fissi, come quelli precaricati nel vettore, è quella di accedere al servizio di geocoding tramite una richiesta http. In questo caso avremmo però bisogno di un API Key. Magari in un altro articolo si approfondirà questo aspetto.

Visualizzazione mappe con Google Fusion Tables

Tralasciando per un attimo le nostre piccole creazioni in javascript per sfruttare le potenzialità delle Google Maps V3,  in questo post vorrei introdurre un modo estremamente semplice per visualizzare in una Google Map dati geografici che abbiamo precedentemente immagazzinato in una tabella in formato CSV,  ODS o XLS. A tale scopo possiamo sfruttare il servizio Google Fusion Tables, cui potete accedere previa identificazione con il vostro account Gmail.  
Il sistema è davvero molto semplice:

  1. Cliccate su New Table
  2. Prelevate il file di indirizzi che volete visualizzare dal vostro PC o direttamente da Google Spreadsheet. Cliliccate su Next
  3. Selezionate l’intestazione e le colonne da includere e clicate su Next
  4.  Eventualmente scrivete alcune informazioni aggiuntive sul file
  5. Andate su Edit, Modify, e specificate quali dati devono essere considerati come Location (cambiandone il tipo da Text). Cliccate su Save
  6. Nel menu andate in Visualize poi Map e visualizzate il risultato. Potrebbe accadere, la prima volta che visualizzate la mappa, che non venga centrata subito sui vostri punti).

Un piccolo esempio, creato per l’occasione, lo potete trovare qui.

Le potenzialità del sistema sono davvero notevoli. Diventa infatti estremamente interessante lavorare con indirizzari pubblici trovati sulla rete, oppure, per fare un altro esempio, con le collezioni di POI che vengono utilizzati dai navigatori satellitari. 

Google Fusion Tables, tra l’altro, non nasce solo per visualizzare mappe geografiche ma per elaborare graficamente esempi complessi di lavoro collaborativo tanto da prevedere un merge (unione) tra i nostri dati e quelli di altre tabelle pubbliche o private. Al di là dei nostri interessi geografici dunque, consiglio uno sguardo più che approfondito a questa nuova applicazione dei Google Labs.

Inserimento markers su Google Maps V3

Dopo l’articolo nel quale abbiamo imparato a visualizzare una semplice Google Map V3, tentiamo di costruire qualcosa di più utile. L’esigenza potrebbe essere quella di visualizzare su di una mappa centrata una serie di punti particolari.
Con lo scopo di facilitare la comprensione dei termini utilizzati, ricordo che secondo le specifiche di Google Maps tutto ciò che può essere identificato da coordinate geografiche é definito overlay. Un particolare tipo di overlay è il marker, cioè il singolo punto sistemato su una mappa.
Nell’esempio che vi propongo, su una Google Map vengono visualizzati i markers relativi ai luoghi dove ho abitato io e alcuni elementi della mia famiglia. Al passaggio del mouse su ogni marker viene visualizzato il tipo di scuola.
Prima  di cominciare abbiamo bisogno delle coordinate dei punti che desideriamo visualizzare. A tale scopo o annotiamo i dati forniti dal nostro gps oppure utilizziamo applicazioni di geocoding, in grado di estrarre le coordinate da un indirizzo. Possiamo far riferimento a servizi come http://mygeoposition.com/ .

Una volta ottenuti i dati, si tratta di “passarli” al nostro codice. La scelta che ho fatto è stata quella di caricare i dati in tre vettori (array), uno per le latitudini, uno per le longitudini e uno per le descrizioni dei markers.
In fase di visualizzazione, i dati dei vettori verranno letti attraverso un ciclo iterativo for.

var i = 0;
for (i=0; i<lat[1].length; i++)
{
var marker = new google.maps.Marker({
position: new google.maps.LatLng(lat[i], long[i]),
map: map, title: descr[i] });
}

Il risultato lo trovate qui mentre qui sotto potete esaminare un estratto del codice usato.

<html>
<head>
<meta name=”viewport” content=”initial-scale=1.0, user-scalable=no” />
<meta http-equiv=”content-type” content=”text/html; charset=UTF-8″/>

<script type=”text/javascript” src=”http://maps.google.com/maps/api/js?
                 sensor=false”></script>
<script type=”text/javascript”>

function carica_variabili() {

//definizione coordinate su cui centrare la mappa
var lat_centro = “44.114773”;
var long_centro = “9.8517”;

//inizializzazione vettori
var lat = new Array();
var long = new Array();
var descr = new Array();

//popolamento vettori. Per aggiungere punti è sufficiente inserire una nuova terna di
// valori:  lat[4], long[4], descr[4] e cosi’ via

lat[0] = “44.111206”;
long[0] = “9.834749”;
descr[0] = “Qui ho abitato fino al 1990”;

lat[1] = “44.117701”;
long[1] = “9.871722”;
descr[1] = “Qui ho abitato fino al 2000”;

lat[2] = “44.113025”;
long[2] = “9.843195”;
descr[2] = “Qui abita mia zia Maria”;

lat[3] = “44.118320”;
long[3] = “9.846319”;
descr[3] = “Qui abita mia sorella”;

//Opzioni della mappa: zoom livello 14, centrata su un punto particolare,
//modalità IBRIDA

var Opzioni = {
        zoom: 14, center: new google.maps.LatLng(lat_centro, long_centro),
        mapTypeId: google.maps.MapTypeId.HYBRID,
       scaleControl: false    }

var map = new google.maps.Map(document.getElementById(“map_canvas”), Opzioni);

//ciclo FOR per la lettura dei valori dei vettori e relativa visualizzazione su
//mappa

var i = 0;
for (i=0; i<lat[1].length; i++)
    {  var marker = new google.maps.Marker({
       position: new google.maps.LatLng(lat[i], long[i]),
      map: map, title: descr[i] });
    }

}
</script>
</head>

<body style=”margin:5px; padding:2px;” onload=”carica_variabili()”>

<div id=”map_canvas” style=”width: 60%; height: 60%;”></div>

</body>
</html>

Linkografia
@ Maps API V3 Overlays  (Google Code – inglese)
@ Esempio visualizzazione markers singolo (Google Code – inglese)

Applicazioni per Android: predisporre e configurare l’ambiente di sviluppo

 Android è il sistema operativo per dispositivi mobili più citato del momento. Per chi desidera cimentarsi con lo sviluppo di applicazioni, ecco il primo di alcuni tutorials.

Le istruzioni che seguono riguardano l’installazione di ambiente e tools Android SDK (Android Software Development Kit) su S.O. Windows.
La prima cosa da fare è naturalmente quella di scaricare il pacchetto SDK, che potete trovare qui. Una volta scompattato il file, troverete i files nella cartella 

android-sdk-windows

Per comodità, può essere rinominata in ‘android‘ e collocata nella root

c:\android

Per cominciare, cliccare su Setup. L’applicazione tenterà di collegarsi ad Internet per scaricare il resto dei files.

Può capitare che subito venga visualizzato l’errore

Failed to fetch URL https://dl-ssl.google.com/android/repository/repository.xml

In questo caso cliccate su “Settings” (menu a sinistra) e mettete il segno di spunta su:

Force https://… sources to be fetched using http://…

Fatto ciò, tornate su “Available Packages” e premete nuovamente il tasto  “Refresh”.

Tutti gli strumenti di sviluppo (debugger, emulatore Android, ecc.) sono contenuti all’interno della cartella

c:\android\tools

E’ opportuno, sotto windows, impostare il percorso tra le variabil di ambiente, in modo da poter lanciare i vari tools da riga di comando senza ogni volta scrivere l’intero percorso.

Per far ciò, basta cliccare col tasto destro su Risorse del Computer (su Windows XP) o Computer (su Vista), Proprietà, Avanzate, Variabili di Ambiente, cliccare due volte su Path e aggiungere c:\android\tools dopo averlo fatto precedere da “;“.

Il passo successivo è installare Eclipse, l’ambiente di sviluppo con l’Android Development Tools (ADT) Plugin. Il pacchetto da scaricare lo potete trovare qui

Il pacchetto da scaricare è  Eclipse IDE for Java Developers (92 MB).
Una volta installato il software, è necessario fare il download dell’ADT plugin ed installarlo nell’ambiente Eclipse.

Questi i passi da seguire:

  1. Lanciate Eclipse.  Vi sarà chiesto il nome del workspace dove salvare le nostre applicazioni: c:\android\eclipseworkspace e selezionare Help, poi Install New Software
  2. Cliccare su Add
  3. Inserire un nome nel campo “Name“. Nel campo “Location” inserire  https://dl-ssl.google.com/android/eclipse/
  4. Cliccare su OK
  5. Tornando nella sezione “Available Software View“, dovreste ora vedere “Developer Tools“. Spuntare la checkbox (vedrete le voci Android DDMS e Android Development Tools). Cliccate su Next.
    Le due voci appariranno anche nella sezione “Install Details“. Cliccate su Next per accettare i termini della licenza, poi cliccate su Finish. Al messaggio di Warning (“You are installing software that contains unsigned content. The authenticity or validity of this software cannot be established. Do you want to continue with the installation?“) non vi preoccupate e date l’OK.

Adesso è necessario installare l’ADT plugin:

  1. Riavviate Eclipse, Verificate che il workspace sia quello inserito al passo 2 del paragrafo precedente.
  2. Selezionate Window, Preferences
  3. Selezionate Android dal pannello a sinistra
  4. Cliccate su Browse e andate nella directory dove si trova SDK (C:\android)
  5. Cliccate Apply, poi OK

L’ambiente di sviluppo a questo punto è pronto e configurato, vedremo in seguito come creare la nostra prima semplice applicazione. Buon lavoro!


Creative Commons License
Questo/a opera è pubblicato sotto una Licenza Creative Commons.

Addthis

AddThis Social Bookmark Button

Flickr Photos

Moods of blue

High heels

Altre foto

%d blogger hanno fatto clic su Mi Piace per questo: