2017-08-04 6 views
1

Je récupère des données de localisation (comme les coordonnées utilisées ci-dessous) à partir de l'API Places de Google.Ouvrir Apple Maps pour la navigation avec le jeu de noms de destination

Lors de la liaison à Apple Maps pour la navigation de mon application, je suis actuellement en utilisant:

https://maps.apple.com/?daddr=[latitude],[longitude]

Lorsque Maps ouvre, il présente les coordonnées pour un court laps de temps avant de se résoudre à une adresse. Ce que je veux, c'est que le nom de la destination apparaisse à la place des coordonnées ou d'une adresse. Depuis que j'utilise React Native, je préférerais préférer une solution javascript seulement (sachant que cela limite essentiellement une solution à cette question à une URL).

J'ai essayé des combinaisons d'autres paramètres énumérés here en vain.

Répondre

1

Essayez avec cette fonction, il vous suffit de passer les coordonnées et le nom lieu, cela fonctionne, je l'utiliser dans plusieurs projets

static func openMapsAppWithLocation(coordinates:CLLocationCoordinate2D,placeName:String) 
{ 
    let regionDistance:CLLocationDistance = 10000 
    let regionSpan = MKCoordinateRegionMakeWithDistance(coordinates, regionDistance, regionDistance) 
    let options = [ 
     MKLaunchOptionsMapCenterKey: NSValue(mkCoordinate: regionSpan.center), 
     MKLaunchOptionsMapSpanKey: NSValue(mkCoordinateSpan: regionSpan.span) 
    ] 
    let placemark = MKPlacemark(coordinate: coordinates, addressDictionary: nil) 
    let mapItem = MKMapItem(placemark: placemark) 
    mapItem.name = placeName 
    mapItem.openInMaps(launchOptions: options) 
} 

Hope this helps

+0

Je devine il n'y a aucun moyen pour ce faire avec l'url seulement. Je demande parce que j'utilise réagissent natif et préférerais une solution javascript seulement. – Palisand

+0

@Palisand Je pense que cela doit être un moyen d'utiliser l'url, mais dans votre question vous manquez la spécification que vous avez besoin de la solution en javascript et ceci est une partie importante de votre question. –

+0

Bon point, je vais le mettre à jour. Votre solution est toujours viable avec réagissez native, car elle prend en charge les modules natifs. – Palisand