Utiliser l'API Waze Deep Links

Une API, compatible avec Waze, permet aux développeurs d'ouvrir l'application client ou la page Web Waze via une URL externe, à partir d'une application ou page Web mobile.

Voici l'URL de base à utiliser pour l'API Waze Deep Links :

https://waze.com/ul

En fonction des paramètres que vous transmettez via cette URL, l'application Waze peut localiser une adresse, indiquer une adresse sur une carte, ou lancer la navigation vers une adresse ou une destination.

Fonctionnement de l'API Deep Links

En fonction de la manière dont Waze est configuré sur l'appareil de l'utilisateur, le programme s'ouvre soit en tant que page Web, soit en tant qu'application.

  • Ordinateur : Waze s'ouvre en tant que page Web.
  • Appareil mobile (sur lequel l'application Waze est installée) : Waze s'ouvre en tant qu'application.
  • Appareil mobile (sur lequel l'application Waze n'est pas installée) : Waze s'ouvre en tant que page Web.

Si vous êtes certain que l'application Waze a été installée, vous pouvez communiquer directement d'une application à une autre, sans passer par l'interface Web, en utilisant l'URL "waze://" à la place de l'URL de base indiquée ci-dessus. Veuillez cependant n'utiliser cette option que si vous êtes certain que les utilisateurs ont installé Waze, sinon rien ne se passera lorsqu'ils appuieront sur le lien.

Utiliser l'API Waze Deep Links

Vous pouvez lancer Waze avec différents paramètres à partir d'une application tierce, d'un e-mail, d'un SMS, d'un lien de page Web ou d'une autre source, à l'aide de l'URL ci-dessous.

Voici l'URL que l'API Waze Deep Links utilise :

https://waze.com/ul?param_name=value[&param_name=value]

Vous trouverez ci-dessous différentes tâches couramment effectuées via l'API Waze Deep Links.

Lancer la navigation vers un lieu

Pour vous rendre dans un lieu spécifique, procédez comme suit :

  1. Ouvrez la carte Waze en temps réel et recherchez votre position dans la barre de recherche. Vous pouvez aussi effectuer un zoom avant et cliquer sur un segment spécifique de la carte.
  2. Cliquez sur l'icône de partage  dans l'angle inférieur droit de la carte.
  3. Dans le pop-up qui s'affiche, cliquez sur "Partager l'itinéraire", puis copiez et collez le lien.

Exemple

Par exemple, l'URL suivante place Times Square (à New York) au centre de la carte :

https://www.waze.com/ul?ll=40.75889500%2C-73.98513100&navigate=yes&zoom=17

Lancer la navigation vers un lieu ajouté aux favoris

Vous pouvez lancer la navigation vers les favoris suivants enregistrés dans l'application Waze :

  • work
  • home

Pour lancer la navigation vers un favori de votre choix, utilisez l'URL suivante :

https://waze.com/ul?favorite=favorite&navigate=yes

L'exemple suivant définit le lieu de travail comme destination :

https://waze.com/ul?favorite=work&navigate=yes

Effectuer une recherche

Pour rechercher une adresse, utilisez la syntaxe suivante :

https://waze.com/ul?q=search_terms

Les valeurs que vous transmettez pour les paramètres doivent être encodées dans l'URL. Par exemple, vous devez remplacer les espaces par %20.

L'URL suivante recherche l'adresse "66 Acacia Avenue" :

https://waze.com/ul?q=66%20Acacia%20Avenue

Afficher sur la carte

Pour définir le degré de grossissement (ou de zoom) pour l'affichage de la carte Waze, utilisez la syntaxe suivante :

https://waze.com/ul?z=magnification_level

La valeur minimale que vous pouvez attribuer au paramètre magnification_level est 6 (affichage le plus rapproché ou degré de grossissement le plus élevé). La valeur maximale que vous pouvez attribuer au paramètre magnification_level est 8192 (affichage le plus éloigné ou degré de grossissement le moins élevé).

L'exemple suivant définit le degré de grossissement sur 8 :

https://waze.com/ul?z=8

Combinaison de paramètres

Vous pouvez utiliser différents paramètres en même temps dans la même URL en séparant les paires nom/valeur par le symbole "&". Vous trouverez ci-dessous quelques exemples :

  • Cet exemple place Maryhill au centre de la carte et effectue un zoom de niveau 10 :

    https://waze.com/ul?ll=45.6906304,-120.810983&z=10
  • Cet exemple permet de rechercher une adresse, puis de lancer la navigation vers celle-ci :

    https://waze.com/ul?q=66%20Acacia%20Avenue&ll=45.6906304,-120.810983&navigate=yes

Exemples

Cette section fournit des exemples d'utilisation de l'API Waze Deep Links sur les plates-formes Android et iOS.

Exemple pour Android

Si Waze est installé, l'extrait de code suivant permet de lancer le programme et de rechercher la zone géographique spécifiée. Si Waze n'est pas installé, cet extrait de code ouvre la page Waze de Google Play :

try
{
  // Launch Waze to look for Hawaii:
  String url = "https://waze.com/ul?q=Hawaii";
  Intent intent = new Intent( Intent.ACTION_VIEW, Uri.parse( url ) );
  startActivity( intent );
}
catch ( ActivityNotFoundException ex  )
{
  // If Waze is not installed, open it in Google Play:
  Intent intent = new Intent( Intent.ACTION_VIEW, Uri.parse( "market://details?id=com.waze" ) );
  startActivity(intent);
}

Exemple pour iOS

L'exemple d'extrait de code suivant lance la navigation vers les coordonnées de latitude et de longitude fournies (si Waze est installé) ou ouvre l'App Store pour que l'utilisateur puisse installer Waze :

- (void) navigateToLatitude:(double)latitude longitude:(double)longitude
{
  if ([[UIApplication sharedApplication]
    canOpenURL:[NSURL URLWithString:@"waze://"]]) {
      // Waze is installed. Launch Waze and start navigation
      NSString *urlStr =
        [NSString stringWithFormat:@"https://waze.com/ul?ll=%f,%f&navigate=yes",
        latitude, longitude];
      [[UIApplication sharedApplication] openURL:[NSURL URLWithString:urlStr]];
  } else {
    // Waze is not installed. Launch AppStore to install Waze app
    [[UIApplication sharedApplication] openURL:[NSURL
      URLWithString:@"http://itunes.apple.com/us/app/id323229106"]];
  }
}

Lorsque vous compilez votre application avec le SDK pour iOS 9.0 ou version ultérieure, vous devez ajouter les éléments suivants au fichier de la liste de propriétés de votre application afin d'y inclure Waze :

<key>LSApplicationQueriesSchemes</key>
<array>
  <string>waze</string>
</array>