Blog Post

HTML5 - Geolocation API

Sign in to queue

Description

Generic Episode Image

GEOLOCATION API

Métodos de Geolocalização

Há três populares maneiras de um agente de usuário descobrir sua posição no globo:

Geolocalização IP

É o método usado pela maioria dos navegadores web em computadores. Através de consultas whois e serviços de localização de IP, vai determinar a cidade ou região em que você está.

Triangulação GPRS

Dispositivos conectados a uma rede de celulares e sem um GPS, ou com o GPS desligado, podem determinar sua posição pela triângulação das antenas GPRS próximas. É bem mais preciso que o método baseado em IP, vai mostrar em que parte do bairro você está.

GPS

É o método mais preciso. Em condições ideais, a margem de erro é de apenas 5 metros.

Embora essas sejam as três maneiras mais populares de se resolver o problema, podem não ser as únicas. Alguns agentes de usuário podem usar uma combinação desses métodos, ou mesmo um novo método que venha a ser inventado. Por isso, a Geolocation API é agnóstica em relação ao método usado. Há apenas uma maneira de ligar e desligar o "modo de alta precisão", o que vai ter significado diferente em cada agente de usuário.

Para obter a posição do usuário, basta executar o script:

  navigator.geolocation.getCurrentPosition(showpos)

O usuário pode então escolher se deseja ou não compartilhar sua posição com o site. Além de o usuário poder dizer não, muita coisa pode dar errado na hora de obter a geolocalização. Para tratar isso, você pode passar o segundo parâmetro a getCurrentPosition:

  navigator.geolocation.getCurrentPosition(showpos,erropos)

 

 

Este treinamento faz parte do Microsoft Virtual Academy: https://www.microsoftvirtualacademy.com

The Discussion

  • User profile image
    Pablo

    Achei muito interessante essa aula, esclareceu muitas coisas q eu ainda ñ sabia.

  • User profile image
    terra

    Recursos poderosos utilizados com muita facilidade!

  • User profile image
    Thiago Adriano

    Muito bom esse conteudo...

  • User profile image
    Jonatas

    Gostei!

  • User profile image
    Claudinei de Camargo

    Interessante

  • User profile image
    Novattu

    Não entendi esse termo AGENTE DE USUÁRIO
    seria nós?
    em outros post vi esse mesmo termo
    citado sendo usado para o próprio
    Usuário
    e Agora?

  • User profile image
    ejulio

    Agente de usuário = navegador

     

  • User profile image
    Fabricio FDG

    achei perigoso qualquer pessoa obter a localização

  • User profile image
    Fabiano

    EXEMPLO:

    <script>
    var x=document.getElementById("demo");
    function getLocation()
      {
      if (navigator.geolocation)
        {
        navigator.geolocation.getCurrentPosition(showPosition);
        }
      else{x.innerHTML="Geolocation is not supported by this browser.";}
      }
    function showPosition(position)
      {
      x.innerHTML="Latitude: " + position.coords.latitude + 
      "<br>Longitude: " + position.coords.longitude; 
      }
    </script>

    [Fonte: W3C]

  • User profile image
    PauloVictor

    Desde que se respeite a política de privacidade, onde deve sempre perguntar se deve permitir, o mesmo para o device. como está no código HTML que é aberto pra qualquer um é um risco, onde esta permissão é mais fácil de ser quebrada, acredito que por isso o DEVICE ainda está em testes e  em desenvolvimento. São recursos poderosos muito fáceis de serem usados. temos que ficar de olho na segurança!

  • User profile image
    Andre Bernardino Cardoso

    Valeu pelo complemento, Fabiano, pois somente pelo exemplo do curso é impossivel saber como que se usa a função.

  • User profile image
    pedro germano

    gostei

  • User profile image
    Daniel

    Segue exemplo de uso junto com a API do Google Maps:

    http://www.deixaeuprogramar.com/2/post/2013/07/geolocation-api-html5-com-google-maps.html

    Abraço!

  • User profile image
    pernoli

    Interessante!

  • User profile image
    Pedro Germano

    gostei

Add Your 2 Cents