usar studio programacion móviles mapview libro ejemplo desarrollo curso como aplicaciones google-maps google-api

studio - Google Maps API V3 y problema de búsqueda local: ¿resultados vacíos?



mapview android studio ejemplo (1)

Estoy intentando implementar Maps API V3 y Local Search, pero parece que tengo problemas. De alguna manera, los resultados en la función OnLocalSearch () están vacíos.

Aquí está mi código completo:

<script type="text/javascript"> //<![CDATA[ $(document).ready(function() { // do stuff when DOM is ready var geocoder = new google.maps.Geocoder(); var address = ''{{string_location}}''; var map; // Our global state for LocalSearch var gInfoWindow; var gSelectedResults = []; var gCurrentResults = []; var gLocalSearch = new GlocalSearch(); if (geocoder) { geocoder.geocode({ ''address'': address }, function (results, status) { if (status == google.maps.GeocoderStatus.OK) { //alert(results[0].geometry.location.lat()) //alert(results[0].geometry.location.lng()) //Create the Map and center to geocode results latlong var latlng = new google.maps.LatLng(results[0].geometry.location.lat(), results[0].geometry.location.lng()); var myOptions = { zoom: 14, center: latlng, mapTypeId: google.maps.MapTypeId.ROADMAP }; map = new google.maps.Map(document.getElementById("map_canvas"), myOptions); gLocalSearch.setSearchCompleteCallback(this, OnLocalSearch); gLocalSearch.execute("{{business_item.name}}"); } else { alert(''No results found. Check console.log()''); console.log("Geocoding address: " + address); console.log("Geocoding failed: " + status); } }); } /* Other functions */ function OnLocalSearch() { if (gLocalSearch.results[0]) { //This is empty. Why? var resultLat = gLocalSearch.results[0].lat; var resultLng = gLocalSearch.results[0].lng; var point = new GLatLng(resultLat,resultLng); callbackFunction(point); }else{ alert("not found!"); } } }); //]]> </script>

FYI, estoy usando esto como un ejemplo y estoy estancado por unas pocas horas sobre esto: http://gmaps-samples-v3.googlecode.com/svn-history/r136/trunk/localsearch/places.html

Cualquier respuesta será muy apreciada.

Saludos, Wenbert

ACTUALIZAR Cometí un error en algún lugar aquí:

<script src="http://www.google.com/uds/api?file=uds.js&v=1.0" type="text/javascript"><;/script> <script src="http://maps.google.com/maps/api/js?v=3.1&sensor=false&region=PH"></script>

Además, asegúrese de verificar dos veces la dirección que está geocodificando. Soy de Filipinas y parece que Google solo geocodifica Major Roads. Consulte http://gmaps-samples.googlecode.com/svn/trunk/mapcoverage_filtered.html

Gracias a jgeerdes de irc.geekshed.net #googleapis


Solo haciendo un par de ajustes para que el código esté realmente completo, y usando una dirección que conozco se geocodificará con éxito más una consulta que sé que devolverá algo, tu código funciona. Aquí esta lo que hice:

<html> <head> <title>Wenbert test</title> <script src="http://www.google.com/jsapi"></script> <script type="text/javascript"> //<![CDATA[ google.load(''jquery'',''1.4.2''); google.load(''maps'',''3'',{other_params:''sensor=false''}); google.load(''search'',''1''); alert(''starting...''); $(document).ready(function() { alert(''here''); // do stuff when DOM is ready var geocoder = new google.maps.Geocoder(); var address = ''4019 lower beaver rd. 50310''; var map; // Our global state for LocalSearch var gInfoWindow; var gSelectedResults = []; var gCurrentResults = []; var gLocalSearch = new GlocalSearch(); if (geocoder) { geocoder.geocode({ ''address'': address }, function (results, status) { if (status == google.maps.GeocoderStatus.OK) { //alert(results[0].geometry.location.lat()) //alert(results[0].geometry.location.lng()) //Create the Map and center to geocode results latlong var latlng = new google.maps.LatLng(results[0].geometry.location.lat(), results[0].geometry.location.lng()); var myOptions = { zoom: 14, center: latlng, mapTypeId: google.maps.MapTypeId.ROADMAP }; map = new google.maps.Map(document.getElementById("map_canvas"), myOptions); gLocalSearch.setSearchCompleteCallback(this, OnLocalSearch); gLocalSearch.execute("debra heights wesleyan church"); } else { alert(''No results found. Check console.log()''); console.log("Geocoding address: " + address); console.log("Geocoding failed: " + status); } }); } /* Other functions */ function OnLocalSearch() { if (gLocalSearch.results[0]) { //This is empty. Why? var resultLat = gLocalSearch.results[0].lat; var resultLng = gLocalSearch.results[0].lng; var point = new google.maps.LatLng(resultLat,resultLng); callbackFunction(point); }else{ alert("not found!"); } } }); //]]> </script> </head> <body> <div id="map_canvas" style="height:100%;"></div> </body> </html>