วิธีใช้ 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 แล้วค้นหาสถานที่ พิมพ์ในช่องค้นหาหรือซูมเข้าแล้วคลิกส่วนที่ต้องการของแผนที่
  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 หากพบปัญหา โปรดติดต่อเรา

ตัวอย่าง

ส่วนนี้มีตัวอย่างวิธีใช้ Waze Deep Links API ในแพลตฟอร์ม 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

ตัวอย่างข้อมูลโค้ดต่อไปนี้จะนำทางไปยังละติจูด/ลองจิจูดหากติดตั้ง 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>