2009-06-29 4 views
8

je me rends compte que vous pouvez ouvrir l'application Google Maps prêt pour les directions en faisant quelque chose comme ceci:google maps ouvertes aux directions de bus

NSString* urlString = @"http://maps.google.com/maps?saddr=London+UK&daddr=Birmingham+UK"; 
[[UIApplication sharedApplication] openURL:[NSURL URLWithString: urlString]]; 

Mais est-il un paramètre que je peux ajouter pour passer automatiquement les instructions de bus? Le document de développeur d'Apple ne semble pas parler de quoi que ce soit à son sujet:

https://developer.apple.com/iphone/library/featuredarticles/iPhoneURLScheme_Reference/Articles/MapLinks.html#//apple_ref/doc/uid/TP40007894

Répondre

22

De MapKiWiki:

Type dirflg Itinéraire:

  • dirflg = h - Passe sur "Éviter les autoroutes" mode de recherche d'itinéraire.
  • dirflg = t - Active le mode de recherche d'itinéraire "Eviter les péages" .
  • dirflg = r - Commute sur "Public Transit" - ne fonctionne que dans certaines zones.
  • dirflg = w - Passe à la marche directions - toujours en version bêta.
  • dirflg = d - Passe à la conduite directions.

Ainsi, votre URL:

NSString* urlString = @"http://maps.google.com/maps?saddr=London+UK&daddr=Birmingham+UK"; 

Devient:

NSString* urlString = @"http://maps.google.com/maps?saddr=London+UK&daddr=Birmingham+UK&dirflg=r"; 

N.B. Les données prenant en charge les types de routes de transport en commun ne sont pas toujours disponibles. J'ai essayé la zone que vous avez utilisée dans votre échantillon (Londres, Birmingham) et j'ai trouvé que ce n'était pas supporté.

+0

Comment pouvons-nous voir cette page au format XML maintenant? Tels que les instructions de conduite au format XML. Par exemple: http://maps.googleapis.com/maps/api/directions/xml?origin=111%20Davisville%20Avenue,Toronto,ON&destination=469%20King%20Street%20West,%20Toronto,%20ON&sensor=false&dirflg=r même s'il y a dirflg = r à la fin, il montre toujours les directions de conduite. – c0d3Junk13

+0

le lien est mort: - / – rahulserver

0

Chaîne url = "http://maps.google.com/maps?f=d&daddr=" + latitude + "," + longitude + "& dirflg = r"; Intention intention = new Intention (android.content.Intent.ACTION_VIEW, Uri.parse (url)); intent.setClassName ("com.google.android.apps.maps", "com.google.android.maps.MapsActivity"); startActivity (intention);

dirflg = r pour les transports publics