วิธีใช้ Deep Link ของ Waze

Waze รองรับ API ที่ช่วยให้นักพัฒนาซอฟต์แวร์เปิดแอปพลิเคชันหรือหน้าเว็บไคลเอ็นต์ Waze ได้ ผ่าน URL ภายนอก URL สามารถเข้าถึงได้จากในแอปพลิเคชันมือถืออื่นหรือจากโทรศัพท์มือถือ หน้าเว็บ

URL พื้นฐานที่จะใช้ Deep Link ของ Waze คือ

https://waze.com/ul

จากนั้นแอปพลิเคชัน Waze จะค้นหาที่อยู่ ทำเครื่องหมายที่อยู่บนแผนที่ หรือเริ่ม เซสชันการนำทางไปยังที่อยู่หรือปลายทาง โดยพิจารณาจากพารามิเตอร์ที่คุณส่งไปที่ข้อมูลนี้ URL

วิธีการทำงานของ Deep Link

การเปิด Waze เป็นแอปไคลเอ็นต์หรือหน้าเว็บขึ้นอยู่กับการกำหนดค่าระบบของผู้ใช้ ดังนี้

  • เดสก์ท็อป: Waze จะเปิดเป็นหน้าเว็บ
  • อุปกรณ์เคลื่อนที่ (และแอป Waze ติดตั้งไว้): แอป Waze จะเปิดขึ้น
  • อุปกรณ์เคลื่อนที่ (และไม่ได้ติดตั้ง Waze): Waze จะเปิดเป็นหน้าเว็บ

หากมั่นใจว่าได้ติดตั้งแอป Waze แล้ว ให้ใช้ URL "waze://" สำหรับ การสื่อสารระหว่างแอปถึงแอปโดยไม่ต้องมีประสบการณ์เว็บ โดยแทนที่ URL ฐานที่อธิบายไว้ ที่ด้านบน ใช้ตัวเลือกนี้เฉพาะเมื่อคุณมั่นใจว่าผู้ใช้ได้ติดตั้ง Waze แล้ว หรือไม่เช่นนั้น หากผู้ใช้แตะลิงก์ ก็จะไม่มีอะไรเกิดขึ้น

ใช้ Deep Link ของ Waze

คุณใช้ URL ต่อไปนี้เพื่อเปิดใช้ Waze ที่มีพารามิเตอร์จากแอปของบุคคลที่สาม, อีเมล, SMS, ลิงก์ของหน้าเว็บ หรือแหล่งที่มาอื่นๆ

Deep Link ของ Waze ใช้ URL ต่อไปนี้

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

ต่อไปนี้เป็นงานเกี่ยวกับ Deep Link ของ Waze ทั่วไป

วิธีไปยังสถานที่หนึ่งๆ

  1. เปิด Waze Live Map และ ค้นหาตำแหน่งของคุณ พิมพ์ลงในช่องค้นหาหรือซูมเข้าแล้วคลิก ส่วนของแผนที่
  2. คลิกไอคอนแชร์ ใน ที่มุมขวาล่างของแผนที่
  3. กล่องโต้ตอบจะปรากฏขึ้น คลิกแชร์เส้นทางการขับขี่ จากนั้นคัดลอกและวางลิงก์

ตัวอย่าง

ตัวอย่างต่อไปนี้คือจุดศูนย์กลางของแผนที่ที่ไทม์สแควร์ในนิวยอร์ก:

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

คุณไปที่รายการโปรดต่อไปนี้ซึ่งบันทึกไว้ในแอป Waze ได้

  • work
  • home

ใช้ URL ต่อไปนี้เพื่อไปยังรายการโปรดที่ระบุ:

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

ตัวอย่างต่อไปนี้กำหนดปลายทางให้ทำงานได้

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

ค้นหาที่อยู่ที่มีไวยากรณ์ต่อไปนี้

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

ค่าที่คุณส่งสำหรับพารามิเตอร์ต้องเข้ารหัส URL ตัวอย่างเช่น คุณต้องแทนที่ พื้นที่ทำงานที่มี %20

ตัวอย่างต่อไปนี้กำลังค้นหา "66 Acacia Avenue"

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

แสดงบนแผนที่

ใช้ไวยากรณ์ต่อไปนี้เพื่อตั้งค่าระดับการขยาย (หรือซูม) ของแผนที่ของ Waze มุมมองแผนที่:

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

ค่าต่ำสุดสำหรับ magnification_level คือ 6 (ใกล้เคียงที่สุดหรือมีการขยายมากที่สุด) ค่าสูงสุดสำหรับ magnification_level คือ 8192 (ไกลที่สุด หรือ มีการขยายน้อยที่สุด)

ตัวอย่างต่อไปนี้ตั้งค่าระดับการขยายเป็น 8

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

รวมพารามิเตอร์

คุณสามารถใช้พารามิเตอร์ร่วมกันใน URL เดียวกันโดยการแยกคู่ชื่อ-ค่าด้วย "&" ตัวอย่างต่อไปนี้จะแสดงวิธีใช้พารามิเตอร์แบบผสม

  • หากต้องการตั้งศูนย์กลางของแผนที่ไว้ที่ Maryhill และซูมไปที่ 10:

    https://waze.com/ul?ll=45.6906304,-120.810983&z=10
  • วิธีค้นหาที่อยู่แล้วไปยังที่อยู่นั้น

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

รวม utm_source

หากคุณใส่ utm_source ไว้ในการใช้งาน เราสามารถเชื่อมโยงการใช้งานกับ พาร์ทเนอร์บางรายโดยเฉพาะ หากปัญหาเกิดขึ้นที่ส่งผลต่อการผสานรวม utm_source ช่วยให้เราติดตามผลกับพาร์ทเนอร์ และมอบประสบการณ์ ที่ดีขึ้นสำหรับพาร์ทเนอร์ สำหรับข้อมูลเพิ่มเติม รายละเอียด โปรดดูตัวอย่างของ iOS หากพบปัญหา โปรด ติดต่อเรา

ตัวอย่าง

ส่วนนี้จะแสดงตัวอย่างวิธีใช้ API Deep Link ของ Waze ใน Android และ iOS ใหม่

ตัวอย่างของ Android

ตัวอย่างข้อมูลโค้ดต่อไปนี้จะเปิด Waze เพื่อค้นหาตำแหน่งที่ระบุถ้า Waze เป็น ติดตั้งไว้แล้ว หากไม่ได้ติดตั้ง Waze ไว้ ระบบจะเปิดหน้า Waze ใน 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);
}

ตัวอย่าง iOS

ตัวอย่างข้อมูลโค้ดต่อไปนี้นำทางไปยัง lat/lon หากติดตั้ง Waze ไว้ หากไม่เป็นเช่นนั้น เปิด App Store เพื่อติดตั้ง 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"]];
  }
}

เมื่อคุณคอมไพล์ด้วย iOS SDK 9.0 ขึ้นไป คุณต้องอัปเดตรายการพร็อพเพอร์ตี้ของแอปพลิเคชัน ไฟล์ต่อไปนี้เพื่อรวม Waze:

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