Cara menggunakan Deep Link Waze

Waze mendukung API yang memungkinkan developer membuka aplikasi klien atau halaman web Waze melalui URL eksternal. URL dapat diakses dari dalam aplikasi seluler lain atau halaman web seluler.

URL dasar untuk menggunakan Deep Link Waze adalah:

https://waze.com/ul

Aplikasi Waze kemudian dapat menemukan alamat, menandai alamat di peta, atau memulai sesi navigasi ke alamat atau tujuan, berdasarkan parameter yang Anda teruskan ke URL ini.

Cara kerja Deep Link

Apakah Waze dibuka sebagai aplikasi klien atau halaman web bergantung pada konfigurasi sistem pengguna:

  • Desktop: Waze dibuka sebagai halaman web.
  • Perangkat seluler (dan aplikasi Waze diinstal): Aplikasi Waze akan dibuka.
  • Perangkat seluler (dan Waze tidak diinstal): Waze dibuka sebagai halaman web.

Jika yakin bahwa aplikasi Waze telah diinstal, Anda dapat menggunakan URL "waze://" untuk komunikasi antar-aplikasi tanpa pengalaman web. URL ini menggantikan URL dasar yang dijelaskan sebelumnya. Hanya gunakan opsi ini jika Anda yakin bahwa pengguna telah menginstal Waze. Jika tidak, tidak akan terjadi apa pun jika pengguna mengetuk link.

Menggunakan Deep Link Waze

Anda dapat menggunakan URL berikut untuk meluncurkan Waze dengan parameter dari aplikasi pihak ketiga, email, SMS, link halaman web, atau sumber lainnya.

Deep Link Waze menggunakan URL berikut:

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

Berikut adalah sejumlah tugas Deep Link Waze yang umum.

Untuk menavigasi ke lokasi tertentu:

  1. Buka Peta Live Waze dan telusuri lokasi Anda. Ketik di kotak penelusuran atau perbesar dan klik segmen peta tertentu.
  2. Klik ikon bagikan di pojok kanan bawah peta.
  3. Dialog akan muncul. Klik Bagikan rute mobil, lalu salin dan tempel link.

Contoh

Contoh berikut memusatkan peta di Times Square di New York:

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

Anda dapat menavigasi ke favorit berikut yang disimpan di aplikasi Waze:

  • work
  • home

Gunakan URL berikut untuk menavigasi ke favorit yang ditentukan:

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

Contoh berikut menetapkan tujuan ke tempat kerja:

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

Telusuri alamat dengan sintaksis berikut:

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

Nilai yang Anda teruskan untuk parameter harus dienkode URL. Misalnya, Anda harus mengganti spasi dengan %20.

Contoh berikut menelusuri "66 Acacia Avenue":

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

Tampilkan di peta

Gunakan sintaksis berikut untuk menetapkan tingkat perbesaran peta (atau zoom) tampilan peta Waze peta:

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

Nilai minimum untuk magnification_level adalah 6 (terdekat, atau perbesaran terbanyak). Nilai maksimum untuk magnification_level adalah 8192 (terjauh, atau perbesaran paling sedikit).

Contoh berikut menetapkan tingkat perbesaran ke 8:

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

Parameter URL

Tabel berikut menjelaskan parameter perutean yang tersedia untuk Deep Link Waze:

Parameter Wajib? Deskripsi
avoid_tolls Opsional Menentukan apakah akan menghitung rute yang menghindari jalan tol. Tetapkan ke true atau t untuk menghindari jalan tol. Tetapkan ke false atau f untuk mengizinkan jalan tol. Setelan defaultnya adalah mengizinkan jalan tol (false).
avoid_ferries Opsional Menentukan apakah akan menghitung rute yang menghindari kapal feri. Tetapkan ke true atau t untuk menghindari kapal feri. Tetapkan ke false atau f untuk mengizinkan kapal feri. Setelan defaultnya adalah mengizinkan kapal feri (false).
avoid_freeways Opsional Menentukan apakah akan menghitung rute yang menghindari jalan bebas hambatan. Tetapkan ke true atau t untuk menghindari jalan bebas hambatan. Tetapkan ke false atau f untuk mengizinkan jalan bebas hambatan. Setelan defaultnya adalah mengizinkan jalan bebas hambatan (false).
avoid_dangerous_turns Opsional Menentukan apakah akan menghindari belokan berbahaya. Tetapkan ke true atau t untuk menghindari belokan berbahaya. Tetapkan ke false atau f untuk mengizinkan belokan berbahaya. Setelan defaultnya adalah menghindari belokan berbahaya (true).
avoid_trails Opsional

Menentukan preferensi perutean untuk jalan tidak beraspal. Nilai yang didukung adalah:

  • avoid_all (Default): Menghindari semua jalan tidak beraspal.
  • allow: Mengizinkan jalan tidak beraspal.
  • avoid_long: Menghindari jalan tidak beraspal yang panjang.
vehicle_type Opsional

Menentukan jenis kendaraan. Nilai yang didukung adalah:

  • private (Default): Kendaraan penumpang.
  • taxi: Kendaraan taksi.
  • motorcycle: Sepeda motor.

Menggabungkan parameter

Anda dapat menggunakan parameter bersama-sama dalam URL yang sama dengan memisahkan pasangan nama-nilai dengan "&". Contoh berikut menunjukkan cara menggunakan kombinasi parameter:

  • Untuk memusatkan peta di Maryhill dan melakukan zoom ke 10:

    https://waze.com/ul?ll=45.6906304,-120.810983&z=10
  • Untuk menelusuri alamat, lalu menavigasi ke alamat tersebut:

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

Menyertakan utm_source

Jika Anda menyertakan utm_source dalam penerapan, kami dapat mengaitkan penggunaan dengan partner tertentu. Jika terjadi masalah yang memengaruhi integrasi, utm_source akan memungkinkan kami menghubungi partner dan memberikan pengalaman partner yang lebih baik. Untuk mengetahui detail selengkapnya, lihat contoh iOS. Jika Anda mengalami masalah, jangan ragu untuk menghubungi kami.

Contoh

Bagian ini memberikan contoh cara menggunakan Waze Deep Links API di platform Android dan iOS.

Contoh Android

Contoh cuplikan kode berikut meluncurkan Waze untuk mencari lokasi yang ditentukan, jika Waze diinstal. Jika Waze tidak diinstal, halaman Waze akan dibuka di 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);
}

Contoh iOS

Contoh cuplikan kode berikut menavigasi ke lat/lon jika Waze diinstal. Jika tidak, App Store akan diluncurkan untuk menginstal Waze:

- (void) navigateToLatitude:(double)latitude longitude:(double)longitude
{
  if ([[UIApplication sharedApplication]
    canOpenURL:[NSURL URLWithString:@"waze://"]]) {
      NSString *bundleIdentifier = NSBundle.mainBundle.bundleIdentifier;
      // Waze is installed. Launch Waze and start navigation
      NSString *urlStr =
        [NSString stringWithFormat:@"https://waze.com/ul?ll=%f,%f&navigate=yes&utm_source=%s",
        latitude, longitude, bundleIdentifier];
      [[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"]];
  }
}

Saat Anda mengompilasi dengan iOS SDK 9.0 dan yang lebih baru, Anda harus memperbarui file daftar properti aplikasi dengan kode berikut untuk menyertakan Waze:

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