Geolocation API

Si parla di il tecnofan, informatica, internet Nessun commento »
1 Stella2 Stelle3 Stelle4 Stelle5 Stelle (Nessun voto)
Loading ... Loading ...

Le Geolocation API sono una specifica del W3C (l’editor è Andrei Popescu, Google Inc, del team di Google Gears) e definiscono le API per accedere alle informazioni di localizzazione attraverso il browser.

Innanzitutto, il punto di riferimento è ovviamente la specifica del W3C: http://www.w3.org/TR/geolocation-API/ (l’editor appartiene al team di Google Gears).

Quali browser supportano le Geolocation API?
Desktop: Firefox 3.5, Opera 10, Chrome (tramite Gears “nativo”), IE 7.0+ (richiede Gears)
Mobile: Safari Mobile, Opera Mobile (richiede Gears), IE Mobile (richiede Gears) e Android Browser (tramite Gears)

Come si usano?
Il funzionamento è molto semplice, e le API vengono sono accessibili tramite Javascript.

Una doverosa premessa: la localizzazione è a carico dello UA, e non c’e’ garanzia di una risposta.

Come si ottiene la posizione attuale del device?
Tramite Javascript lo sviluppatore chiede allo User Agent la posizione attuale: a questo punto o si ottiene un risultato (asincrono) o un errore (se ad esempio le geolocation API non sono supportate). Entrambi i casi vengono gestiti tramite callback.

void getCurrentPosition(in PositionCallback successCallback, [Optional] in PositionErrorCallback errorCallback, [Optional] in PositionOptions options);

Una possibile implementazione è la seguente:

navigator.geolocation.getCurrentPosition(

function(position) {

var location = [position.address.city, position.address.region, position.address.country].join(', ');
document.getElementById('gotcha').innerHTML = position.latitude + "," + position.longitude, location);
},

function() {
document.getElementById('cantfindyou').innerHTML = "Crap, I don't know. Good hiding!";
}

);

In caso di successo si ottiene un oggetto Position definito in questo modo:

interface Position {
readonly attribute Coordinates coords;
readonly attribute DOMTimeStamp timestamp;
};

interface Coordinates {
readonly attribute double latitude;
readonly attribute double longitude;
readonly attribute double altitude;
readonly attribute double accuracy;
readonly attribute double altitudeAccuracy;
readonly attribute double heading;
readonly attribute double speed;
};

Il mio device ha il GPS. Come posso richiedere che venga utilizzato per la localizzazione?

Le API permettono di impostare alcuni filtri, utilizzando le PositionOptions

interface PositionOptions {
attribute boolean enableHighAccuracy;
attribute long timeout;
attribute long maximumAge;
};

Il parametro enableHighAccuracy è proprio quello che serve per specificare che si sta richiedendo una localizzazione ottenuta con la migliore tecnologia disponibile. Impostare questo parametro a true può allungare il tempo necessario a ottenere una risposta.

Il parametro timeout consente di definire l’intervallo massimo di tempo entro cui lo User Agent deve rispondere alla richiesta. Nel caso in cui sia stato impossibile soddisfare la richiesta, verrà invocata la errorCallback, che riceverà un PositionError di tipo TIMEOUT.

Lo User Agent molto probabilmente mantiene una cache. Il parametro maximumAge va utilizzato se si vuole definire la massima età dei dati ricevuti.

Posso richiedere il tracking della posizione?
Si. E’ possibile richiedere un aggiornamento continuo della posizione tramite il metodo watchPosition().

long watchPosition(in PositionCallback successCallback, [Optional] in PositionErrorCallback errorCallback, [Optional] in PositionOptions options);

Il funzionamento è analogo al caso di una richiesta "one time". L'unica differenza è che le callback verranno richiamate ogni volta che lo User Agent ritiene che ci sia un cambiamento di posizione.

Come disabilito il tracking?

Il tracking va disabilitato tramite il metodo:
void clearWatch(in int watchId);

Cosa mi consigli di leggere su questo argomento?

E’ tutto! :-)

Uno sfascio

Si parla di tu sei la squadra del cuore... 1 Commento »
1 Stella2 Stelle3 Stelle4 Stelle5 Stelle (Nessun voto)
Loading ... Loading ...

Uno sfascio.

Avevamo una dirigenza competente e una squadra in grado di vincere tutto per anni.

Ci hanno tolto tutto.

Ora resta una squadra in grado di vincere una inutile cazzo di partita contro le merde indossatrici di scudetti, e dei dirigenti che a parole vincono tutto ma nei fatti sono fumo e nient’altro.

La Triade aveva il pregio di tacere e di lasciar parlare i fatti. Una vipera pronta a uccidere e a difendersi quando attaccata.

blanc, secco, cobolli e il pavido zaccone sono uno scempio nella nostra Storia.

Questo sarà, a malincuore, l’ultimo post sulla Juve, fino a quando le parole al vento di questi personaggi non verranno rimpiazzate dalle nostre vittorie.

Un cuore grande così

Si parla di tu sei la squadra del cuore... Nessun commento »
1 Stella2 Stelle3 Stelle4 Stelle5 Stelle (3 voti, media: 4,67 su 5)
Loading ... Loading ...

Juve 2 - merde 1
Juve 2 – Indossatori 1 (Felipe MeloChiellini, un indossatore, Marchisio)

Siamo arrivati a questa partita dopo le scoppole di Bordeaux e di Cagliari, dopo l’ennesimo infortunio, dopo l’ennesima campagna mediatica finanziata della carta igienica rosa. A Milano si scommetteva sui gol di scarto con cui si sarebbe vinto.

Senza

fare i conti

con la Juve.

E’ stata una vera battaglia: gollonzo di Felipe Melo, show di Mourinho e amnesia difensiva. Tutto da rifare, con Eto’o dominante nel finale di primo tempo.

Dal 45° in avanti, solo Juve. Claudio Marchisio irrompe sulla respinta di Julio Cesar e con un sublime tocco sotto scatena il delirio dell’Olimpico. Gli indossatori inseriscono il ragazzino viziato, e Caceres lo annulla. Una manciata di simulazioni, due calci di punizione con scivolone e palla in tribuna, una sceneggiata da premio Oscar in occasione dell’espulsione di Felipe Melo: con che coraggio si presenterà a chiedere lo stipendio a fine mese?

Dopo soli 5′ 30″ di recupero, finisce con i ragazzi che vengono a esulare sotto la curva. Il cuore Juve è stato più forte dei calci di lucio, degli applausi dello special Zero, del teatrino del ragazzino viziato e delle testate di chivu. Niente male.