2009-09-29 20 views
12
llegar

he encontrado que la API de Google Maps es compatible con direcciones a través de:MKMapView ruta/

var map; 
var directionsPanel; 
var directions; 

function initialize() { 
    map = new GMap2(document.getElementById("map_canvas")); 
    directionsPanel = document.getElementById("my_textual_div"); 
    map.setCenter(new GLatLng(49.496675,-102.65625), 3); 
    directions = new GDirections(map, directionsPanel); 
    directions.load("from: 500 Memorial Drive, Cambridge, MA to: 4 Yawkey Way, Boston, MA 02215 (Fenway Park)"); 
} 

Entonces, ¿cómo puede esto se traduzca en Objective-C para que pueda ser recuperada por el iPhone? Sé cómo trazar una línea en MKMapView. Solo necesito las geolocalizaciones para la ruta.

O tal vez hay una forma diferente de obtener la ruta entre dos puntos de geolocalización.

Por favor, hágamelo saber,

Gracias de antemano.

Respuesta

9

Se menciona un Google Maps llegar indocumentado activos y de productos expuestos here

También usted debe echar un vistazo a la aplicación de ejemplo de IPhone que atrae rutas/direcciones en MKMapView uso de la API se mencionó anteriormente here

Pero la advertencia acerca de los problemas de licencia sobre la API de Google Maps Directions no documentada.

Espero que esto ayude.

+3

** - AVISO - ** Encuentre un proyecto de muestra en github [https://github.com/kadirpekel/MapWithRoutes](https://github.com/kadirpekel/MapWithRoutes) – coffeemate

+0

los enlaces en ambos "aquí" no funcionan cuando hice clic antes de un minuto mientras escribía este comentario. Por favor, compruebe si están trabajando o no y actualícelos ... porque de hecho soy de ellos ... – Nayan

+0

usando google maps APi funciona solo mientras usa Google maps, esto ya no parece un método confiable ya que iOS 5 no lo permite, necesita un mejor methods.Please publicar si alguien encuentra alguno. –

8

Originalmente iba a decir (y estoy seguro de que otros lo mencionarán) que los términos de uso de Google Maps indican que no puede usar las instrucciones si planea usar MapKit. Pero luego comprobé http://code.google.com/apis/maps/terms/iPhone.html y no pude encontrar una restricción explícita. Si lo entiendo correctamente, en realidad dice que no puede usar direcciones siempre que esté vinculado a una funcionalidad paso a paso impulsada por GPS en tiempo real. Debe usar su propio juicio sobre si está bien o no y si afecta su posibilidad de aceptación en la AppStore.

En lo que respecta a obtener los datos reales en Objective-C lo mejor es consultar la documentación de búsqueda de Google Ajax [http://code.google.com/apis/ajaxsearch/documentation/] especialmente la sección bajo Flash y otros entornos sin Javascript. Explica una API RESTful donde puede enviar solicitudes HTTP GET a Google y recuperar datos JSON. Esa es la única forma que he encontrado para obtener datos programáticos de Google que no están vinculados a Javascript.

Una vez que haya encontrado la URL adecuada para invocar, puede envolver todo en una llamada ASIHTTPRequest y enviar el resultado a JSON parser. Una cosa a tener en cuenta es que la API RESTful devuelve solo unos pocos resultados (entre 4 y 8) a la vez y debe continuar hasta que tenga todos los datos. También parece haber un límite de 64 elementos para la cantidad de resultados devueltos por la API, por lo que algunos casos límite complejos pueden verse afectados.

+0

Creo que es raro que admitan casi todo, excepto las instrucciones. Ah, bueno, supongo que soy mejor que usar una aplicación de reenvío a la de google maps. – Mark