2011-09-17 3 views

risposta

-2

I dipende da quale metodo viene utilizzato per ottenere la posizione. Se usa l'IP, potresti mostrarti praticamente ovunque. Se usa il Wifi, potrebbe essere solo un dato di parte.

3

Diversi dispositivi hanno diversi gradi di precisione ed è importante che l'applicazione sia consapevole della differenza. Un telefono cellulare che ha un'unità GPS accesa è solitamente preciso entro tre metri. Un telefono cellulare senza un'unità GPS, con l'unità GPS spenta per massimizzare la batteria, o in una posizione in cui il GPS non può contattare i satelliti GPS dovrà utilizzare la triangolazione della torre cellulare per stimare la posizione degli utenti ed è tipicamente preciso entro 3000 metri abbastanza precisi da sapere in che zona si trova l'utente, ma completamente inutili per dire loro quale edificio stanno guardando.

Se l'utente accede al tuo sito da un computer collegato a una connessione a banda larga terrestre, di solito può individuare l'indirizzo preciso consultando un database del provider e individuando l'indirizzo esatto dal provider DSL o via cavo.

Per ottenere l'accuratezza delle informazioni sulla posizione, è possibile interrogare la proprietà di accuratezza dell'oggetto Coord. La proprietà dell'accuratezza non è esatta in alcun modo, ma darà alla tua applicazione un buon senso se hai o meno una posizione quasi precisa o un quartiere.

+0

come aggiungere tale precisione .. Puoi spiegarlo nel codice? – Dimple

5

Ho avuto lo stesso problema con Chrome su Windows, ma ho avuto modo di funzionare, almeno una parte del tempo.

ero anche usando l'esempio http://html5demos.com/geo

La posizione non era solo imprecise, è stato anche nella città sbagliata.

Ho provato lo stesso esempio sul mio iPad (Safari) e lì la posizione era corretta. Il mio iPad utilizza la stessa rete WiFi del mio PC, quindi ho capito che non era un problema con il mio ISP che restituiva la posizione sbagliata, era a causa del browser sul mio PC.

Mi è capitato di mostrare la posizione corretta in Chrome accedendo alle impostazioni di Chrome e svuotando la cache e i cookie.

non era sufficiente selezionare solo in Chrome "Strumenti/Cancella dati di navigazione/Cookie & Cache", fu solo dopo in Chrome Ho selezionato "Impostazioni Impostazioni/Privacy/content/tutti i cookie e dati dei siti" e cancellando tutti i cookie, l'esempio mostrava la posizione corretta.

Aggiornamento 1: ho provato lo stesso esempio di geolocalizzazione il giorno successivo, e con mia irritazione stava di nuovo mostrando la città sbagliata. Ho provato a farlo funzionare cancellando le impostazioni di Chrome come descritto sopra e questa volta questa soluzione non ha funzionato. Tuttavia, quando ho usato l'applicazione CCleaner e ho selezionato Cleaner/Applicazioni e ho cancellato tutti i dati di Chrome (cache internet, cronologia internet, cookie e sessione), l'esempio geo mostrava la posizione corretta. Sto usando l'ultima versione di Chrome. Speriamo che nelle versioni future funzionerà in modo più coerente.

Aggiornamento 2: Ho provato la procedura sopra in un secondo momento e non sono riuscita a ottenere la posizione corretta. Potrebbe essere che la geolocalizzazione ora restituisca la posizione del mio fornitore di servizi Internet, piuttosto che la mia posizione, utilizzando il mio IP e i servizi di localizzazione di Google. Ovviamente questa posizione è abbastanza inutile. Il motivo per cui il mio iPad restituisce la posizione corretta è probabilmente perché contiene un GPS integrato.L'iPad 3G/4G ha un chip GPS integrato nel chip del ricevitore GSM, mentre i soli modelli WiFi non dispongono di GPS. Quando i "servizi di localizzazione" sono disattivati ​​nelle impostazioni dell'iPad, la posizione tramite GPS e IP viene disattivata. Sarebbe utile solo per poter spegnere il GPS sul mio iPad e usare solo la posizione IP, ma non sono sicuro che sia possibile.

Aggiornamento 3. Come ho detto, sto usando una chiavetta WiFi nel mio PC. Ho notato che quando guardo le reti WiFi disponibili (con View Available Wireless Networks) e la mia è l'unica rete, l'esempio di geolocalizzazione restituisce una posizione in una città diversa, ma se qualcuno dei miei vicini ha una rete WiFi nel raggio di il mio PC, l'esempio di geolocalizzazione restituisce la mia posizione esatta, a pochi metri. cioè la geolocalizzazione nel browser è abbastanza intelligente da usare queste informazioni extra per localizzarmi.

(credo le altre risposte a questa domanda completamente sulla strada sbagliata. L'interrogante afferma che la posizione veniva mostrato nella città sbagliata, quindi la domanda non è a che fare con la precisione della localizzazione)

+0

Sembra che il database IP-to-location di Google abbia un errore per il tuo indirizzo IP. Se stai usando un indirizzo dinamico, allora potrebbe facilmente essere il caso, dal momento che non c'è alcuna garanzia che altre persone con quell'indirizzo si trovino nella tua stessa città. Per quanto riguarda la modifica del Wi-Fi, il risultato è che Firefox utilizza l'insieme di punti di accesso nelle vicinanze come parte del calcolo.Se tutti gli AP indicano una posizione e il tuo indirizzo IP ne indica un'altra, allora avrebbe senso lasciare vincere la maggioranza e utilizzare la posizione derivata da AP. –

1

Secondo allo Firefox geolocation FAQ, Firefox utilizza Google per i servizi di localizzazione. Si invia a Google le seguenti informazioni:

  • Il tuo indirizzo IP
  • Informazioni su vicine punti di accesso Wi-Fi
  • comunque A identificatore Google-assegnato (cambio settimanale)

presumo lo farà usa anche i dati GPS se sul tuo computer è installato un ricevitore, ma le FAQ non ne parlano. Forse perché non è necessario utilizzare Google sever se disponi di dati GPS disponibili.

Suppongo che Chrome, come prodotto Google, stia utilizzando lo stesso database di geolocalizzazione.

Per quanto riguarda il motivo per cui si ottengono risposte errate, che si trovano nel database di Google. Ci sono sicuramente errori in là. Ad esempio, il mio computer dell'ufficio si presenta a Città del Messico anche se il mio indirizzo IP e l'indirizzo IP del server proxy del mio datore di lavoro sono entrambi a Plano, in Texas, e tutti gli altri database IP-to-location hanno questo corretto (preso dal whois registrato . i dati per l'indirizzo)

Qui ci sono due pagine di Google che sostengono aiuterà, anche se non hanno ancora fatto una cosa per me:

th e quest'ultimo (contact/ip) è un modulo per segnalare problemi di localizzazione di Google che si manifestano mentre Google ti reindirizza alla home page del paese sbagliato. Dicono che potrebbe richiedere più di un mese per correggere il database. Ho aspettato quasi due mesi senza fortuna.

Ci sono componenti aggiuntivi di Firefox che possono essere utilizzati per forzare il browser a segnalare una posizione specifica. Sono pensati per il debug di servizi Web sensibili alla posizione, ma potrebbero anche essere utilizzati in un caso come questo, in cui il metodo normale non funziona.