2009-11-19 15 views
6

Come si forza l'applicazione di mappe di iPhone ad aprirsi quando il collegamento su una pagina Web passa a maps.google.com/?q= http://example.com/mapdata.kml?Apri l'applicazione mappa iPhone tramite link a Google maps con KML come query

Se apro l'applicazione mappa e inserisco in modo specifico http://example.com/mapdata.kml nella casella della query, tutti i dati vengono caricati correttamente. Ma se utilizzo http://maps.google.com/?q=http://example.com/mapdata.kml, l'applicazione mappa viene caricata ma non viene caricato alcun dato e nella casella della query non è presente nulla.

Le query tipiche funzionano, come q = cupertino o q = [latitudine, longitudine]. Sembra essere il collegamento kml che è rotto.

Qualcuno ha ottenuto che funzioni? Questo è supportato? Devi URI codificare la query?

+0

correlati: http://stackoverflow.com/qu estions/2963132/how-to-email-cllocationcoordinate2d-as-a-link – cregox

risposta

7

La tua domanda mi interessava quindi mi sono guardato attorno allo Apple URL Scheme Reference. Si dice quanto segue:

Anche se l'applicazione Maps supporta molti dei parametri di Google Maps e query, essa non li supportano. Le regole per la creazione di una mappa link valido sono i seguenti:

Il dominio deve essere google.com e il sottodominio deve essere mappe o ditu.

Il percorso deve essere /,/mappe,/local o/m se la query contiene sito come chiave e locale come valore.

Il percorso non può essere/maps/*.

Tutti i parametri devono essere supportati . Vedere la Tabella 1 per l'elenco dei parametri supportati .

Un parametro non può essere q = * se il valore è un URL (così KML non viene prelevato).

I parametri non possono includere view = text o dirflg = r.

Se sto leggendo questo diritto, non sembra come quello che hai intenzione è supportato, tuttavia, è interessante che è possibile digitare l'URL completo kml in app mappe direttamente e farlo funzionare. Sembra un bug da parte di Apple. Vorrei solo iniziare a lanciare parametri e vedere cosa succede. È sempre divertente ;-)

migliori saluti,

P.S. Che è un bel adesivo. Preferirei una taglia, ma sembra che tu non abbia accumulato abbastanza punti SO per offrirlo ancora.;-)

+0

Argh! Avevo paura di questo. E avevo letto il riferimento alla ricerca di una risposta, ma in qualche modo ho guardato oltre quel punto. Dovrò cercare un altro metodo. Ma hai risposto alla domanda in modo che l'adesivo sia tuo se lo vuoi. Mandami una email a harry at-at harrylove.org. Saluti! –

+0

Posso usare il testo "giapponese" "マ ク ド ナ ル ド" come stringa di query. La sua non funziona. Come affrontare questo problema? – Satyam

2

Questo link vi fare quello che vuoi

<a href="maps:q=http://example.com/mapdata.kml"> 

ma funzionerà solo su iOS quindi assicuratevi di controllare il programma utente ecc e utilizza un normale URL mappe su iOS non

<a href="http://maps.google.com?q=http://example.com/mapdata.kml"> 
+0

Vedi sopra: "Un parametro non può essere q = * se il valore è un URL (quindi KML non viene prelevato)." –

+0

'maps: q = myquery' funziona, ma puoi indicarmi dove nella documentazione dice che possiamo usare' maps: ... 'invece di 'http: // ...'? –

0

L'URL mappe in forma più semplice

mappe: q = GivenTitle @ latitudine, longtitude

Problemi correlati