<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>ZedBlog &#187; geolocation</title>
	<atom:link href="http://blog.zedplan.com/tag/geolocation/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.zedplan.com</link>
	<description></description>
	<lastBuildDate>Mon, 31 May 2010 14:57:21 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Geolocalizando al usuario</title>
		<link>http://blog.zedplan.com/geolocalizando-al-usuario/90</link>
		<comments>http://blog.zedplan.com/geolocalizando-al-usuario/90#comments</comments>
		<pubDate>Tue, 14 Jul 2009 19:12:52 +0000</pubDate>
		<dc:creator>Demián Rodríguez</dc:creator>
				<category><![CDATA[Desarrollo Web]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[API]]></category>
		<category><![CDATA[DOM]]></category>
		<category><![CDATA[geolocation]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[HTML5]]></category>

		<guid isPermaLink="false">http://blog.zedplan.com/?p=90</guid>
		<description><![CDATA[Una de las nuevas características de los navegadores actuales que introdujeron soporte para HTML5 es la API de Geolocalización, la cual nos permite obtener las coordenadas de la posición actual del usuario. Actualmente solo Firefox 3.5  y Opera 10 beta lo implementan en forma nativa, pero el servicio también está disponible instalando Gears.
La API hace [...]]]></description>
			<content:encoded><![CDATA[<p>Una de las nuevas características de los navegadores actuales que introdujeron soporte para HTML5 es la API de Geolocalización, la cual nos permite obtener las coordenadas de la posición actual del usuario. Actualmente solo Firefox 3.5  y Opera 10 beta lo implementan en forma nativa, pero el servicio también está disponible instalando <a href="http://code.google.com/intl/es-ES/apis/gears/" target="_blank">Gears</a>.</p>
<p>La API hace transparente al programador la forma en que se obtiene la posición del usuario. Hay varias formas de determinarla y éstas dependen de la plataforma y el dispositivo del usuario. Si se accede desde un dispositivo con GPS, se podrá obtener las coordenadas en forma casi exacta. Si se accede desde una PC o móvil sin GPS, el navegador envía una solicitud al servicio de geolocalización de Google con información sobre los puntos de acceso WiFi cercanos, aunque en este último, la exactitud de la posición obtenida deja mucho que desear en algunos casos.</p>
<p>A continuación les dejo un código de prueba que usé para determinar la localización con Firefox 3.5.<br />
Irónicamente, a pesar de estar ubicado en el barrio de Recoleta, las coordenadas resultantes me ubican en Puerto Madero <strong><span style="text-decoration: line-through;">a metros de las oficinas de Google</span></strong>.</p>
<pre class="js">if (navigator.geolocation) {
    // nos aseguramos de que el browser soporte la API
    navigator.geolocation.getCurrentPosition(function(position) {
    	var latitude = position.coords.latitude;
    	var longitude = position.coords.longitude;
        // aca podemos ubicar el punto en un mapa
        // o hacer una geocodificación inversa para obtener la dirección
    }, function(error) {
	// error es un objeto con las siguientes propiedades:
    	// - code: código de error
    	// - message: mensaje de error
    });
}</pre>
<p>Al método <code>getCurrentPosition()</code> se le envía como primer parámetro un callback que recibirá un objeto con las propiedades de la posición. El segundo parámetro es opcional y es un callback que se llamará si ocurre algún error en el proceso.</p>
<p>Si usamos la <a href="http://code.google.com/intl/es/apis/gears/api_geolocation.html" target="_blank">API de Gears</a>, el proceso es el mismo, salvo que tenemos algunas opciones adicionales, incluso el objeto <code>position</code> ya nos devuelve la dirección luego de hacer una geocodificación inversa.</p>
<p>Enlaces útiles:</p>
<ul>
<li><a href="http://www.w3.org/TR/geolocation-API" target="_blank">W3C Geolocation API</a></li>
<li><a href="https://developer.mozilla.org/Es/Using_geolocation" target="_blank">Mozilla Developer Center: Using Geolocation<br />
</a></li>
</ul>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fblog.zedplan.com%2Fgeolocalizando-al-usuario%2F90&amp;linkname=Geolocalizando%20al%20usuario"><img src="http://blog.zedplan.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://blog.zedplan.com/geolocalizando-al-usuario/90/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
