2009-07-06 30 views
19

Sto sviluppando un'applicazione con due versioni. Uno per il web e un altro per iPhone.Google Map Route Draw su IPhone

Nell'applicazione Web, sono in grado di disegnare un percorso su strada (tracciare automaticamente il percorso che segue strade/autostrade) e fuori strada (tracciare una linea diretta tra due punti specifici).

Esiste un'API, per iPhone, che può essere utilizzata per tracciare un percorso sulla mappa? Sono in grado di disegnare una linea retta sulla mappa tra due nodi, ma non sono in grado di tracciare un percorso della mappa stradale in iPhone.

Sto usando iPhone 3.0 e 3.0 SDK

Grazie.

+24

Mi sembra che tra le persone ci sia una tendenza a sviare le domande perché sono scritte in inglese povero. Chiunque senta il bisogno di downvotare dovrebbe pensare due o tre volte se la domanda è davvero poco chiara, o se si tratta solo di un pessimo inglese. Allo stesso tempo, le persone che non parlano fluentemente l'inglese dovrebbero fare uno sforzo extra per il controllo ortografico e assicurarsi che la loro domanda sia comprensibile. È anche più facile ottenere buone risposte in questo modo. – Felixyz

+10

Inoltre, anziché eseguire il downvoting di un'altra opzione, è necessario modificare la domanda per renderla più leggibile. Alcune domande non possono essere riparate, ma questa domanda era perfettamente soddisfacente, aveva bisogno di un po 'di pulizia. –

+0

Ho risposto a una domanda simile a cui è possibile fare riferimento [qui] (http://stackoverflow.com/questions/1494836/mkmapview-route-directions/2941835#2941835) – coffeemate

risposta

3

Sfortunatamente, non ci sono API per questo in 3.0. Probabilmente si dovrà aggiungere una sovrapposizione sulla MKMapView, ma questo è probabilmente molto noioso

2

Un modo standard su iPhone (poiché esistono restrizioni espresse nella licenza MapKit) è utilizzare [[[UIApplication sharedApplication] delegate] openURL:myURL]; per aprire l'app Maps.

myURL è un 'http://maps.google.com/maps? ...' URL (oggetto NSURL) con il sottoinsieme di opzioni supportate nei documenti su developer.apple.com. Utilizzi i parametri saddr = e daddr = per impostare l'indirizzo iniziale e finale (o le coordinate) del percorso e l'utente può quindi visualizzare il percorso e utilizzare le indicazioni stradali per guidare, andare in bicicletta o camminare sull'app Maps per percorrere il percorso. Forse su iPhone 4 GM potrai tornare al tuo programma, ma al momento l'apertura dell'URL terminerà l'app e avvierà l'app Maps (o Safari, se Maps non è installata).

10

c'è una nuova API in iOS4 chiamata MKOverlayPathView che fa esattamente questo. MKOverlayPathView

Volevo solo aggiornare questo post con queste informazioni in modo che le persone ricevano l'intera storia.

4
  1. Usa questo URL per creare un file JSON/XML http://maps.googleapis.com/maps/api/directions/output?parameters (leggi code.google.com/apis/mappe/documentazione/direzioni/per più di riferimento)

  2. analizzare il file JSON/XML

  3. in rotte - gambe - passi - polilinea è possibile vedere i punti che sono in formato codificato

  4. decodificare quei punti (consultare http://fkn1337.com/decode-google-maps-polylines-objective-c/) e fare una matrice CLLocationCoordinate2D

  5. Uso

(MKPolyline *) polylineWithCoordinates: (CLLocationCoordinate2D *) coordinate count: (NSUInteger) contare

per la creazione di un oggetto MKPolyline

6 Uso addOverlay di MKMapview possiamo creare una sovrapposizione con la direzione

1

qualche aggiunta a Domanda potrebbe essere: COME PUO 'UNO OTTENERE QUESTI COORDINATI DINAMICAMENTE, QUALI SONO USATI PER DISEGNARE IL PERCORSO, NELL'ESPETTO Campione MapLinesAndAnnotations di Craig Spitzkoff ....? (Ottenere le coordinate tra due posizioni da Google Maps).

Usa il seguente link: MapWithRoute

Speranza, questo potrebbe aiutare a disegnare il percorso utilizzando due posizione definita utente.