รูปแบบ URL ของ Google Maps สําหรับ iOS

ในอุปกรณ์ที่ใช้ iOS 9 ขึ้นไป คุณสามารถใช้ Universal Link เพื่อเปิด Google Maps ได้เมื่อมี URL ของ Google Maps

คุณสามารถใช้ URL Scheme ของ Google Maps เพื่อเปิด แอป Google Maps สำหรับ iOS และทำการค้นหา ส่งคำขอเส้นทาง และแสดงมุมมองแผนที่ เมื่อคุณเปิด Google Maps ระบบจะส่งรหัส Bundle ของคุณเป็นส่วนหนึ่งของคำขอโดยอัตโนมัติ

คุณไม่จำเป็นต้องใช้คีย์ API ของ Google เพื่อใช้ URL Scheme ของ Google Maps

Google Maps สำหรับ iOS รองรับ Universal Link ในอุปกรณ์ที่ใช้ iOS 9 ขึ้นไป

หาก URL ตรงกับนิพจน์ทั่วไปต่อไปนี้และอุปกรณ์ใช้ iOS 9 ขึ้นไป คุณอาจพิจารณาใช้วิธี openURL: โดยตรง

(http(s?)://)?
((maps\.google\.{TLD}/)|
 ((www\.)?google\.{TLD}/maps/)|
 (goo.gl/maps/))
.*

ตัวอย่างเช่น

Swift

UIApplication.shared.openURL(URL(string:"https://www.google.com/maps/@42.585444,13.007813,6z")!)

Objective-C

[[UIApplication sharedApplication] openURL:
   [NSURL URLWithString:@"https://www.google.com/maps/@42.585444,13.007813,6z"]];

ภาพรวม

URL Scheme ช่วยให้คุณเปิดแอปพลิเคชัน iOS จากแอป iOS อื่นหรือเว็บแอปพลิเคชันได้ คุณสามารถตั้งค่าตัวเลือกใน URL ที่จะส่งไปยังแอปพลิเคชันที่เปิด แอป Google Maps สำหรับ iOS รองรับรูปแบบ URL ต่อไปนี้

  • comgooglemaps:// - รูปแบบนี้ช่วยให้คุณเปิดแอป Google Maps สำหรับ iOS และดำเนินการอย่างใดอย่างหนึ่งต่อไปนี้ได้

    • แสดงแผนที่ในตำแหน่งและระดับการซูมที่ระบุ
    • ค้นหาสถานที่หรือตำแหน่ง และแสดงสถานที่หรือตำแหน่งเหล่านั้นบนแผนที่
    • ขอเส้นทางจากตำแหน่งหนึ่งไปยังอีกตำแหน่งหนึ่ง ระบบจะแสดงเส้นทางสำหรับการเดินทาง 4 รูปแบบ ได้แก่ การขับรถ การเดิน การปั่นจักรยาน และการขนส่งสาธารณะ
    • เพิ่มการนำทางลงในแอป
  • comgooglemapsurl:// - รูปแบบนี้ช่วยให้คุณเปิดแอป Google Maps สำหรับ iOS ได้โดยใช้ URL ที่ได้จากเว็บไซต์ Google Maps บนเดสก์ท็อป ซึ่งหมายความว่าคุณสามารถมอบประสบการณ์การใช้งานบนอุปกรณ์เคลื่อนที่ให้แก่ผู้ใช้แทนที่จะโหลดเว็บไซต์ Google Maps

    • URL เดิมอาจเป็น maps.google.com หรือสำหรับ google.com/maps, หรือใช้โดเมนระดับบนสุดของประเทศที่ถูกต้องแทน com นอกจากนี้ คุณยังส่งต่อ URL การเปลี่ยนเส้นทาง goo.gl/maps ได้ด้วย

เปิดแอป Google Maps สำหรับ iOS และใช้ฟังก์ชันที่ต้องการ

หากต้องการเปิดแอป Google Maps สำหรับ iOS และใช้ฟังก์ชันที่รองรับ (ไม่บังคับ) ให้ใช้รูปแบบ URL ต่อไปนี้

comgooglemaps://?parameters

เราจะอธิบายพารามิเตอร์โดยละเอียดในส่วนท้ายของเอกสารนี้

ตรวจสอบว่าแอป Google Maps พร้อมใช้งานในอุปกรณ์หรือไม่

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

Swift

UIApplication.shared.canOpenURL(URL(string:"comgooglemaps://")!)

Objective-C

[[UIApplication sharedApplication] canOpenURL:
    [NSURL URLWithString:@"comgooglemaps://"]];

ตัวอย่างเช่น หากต้องการแสดงแผนที่ของ Central Park ในนิวยอร์ก คุณสามารถใช้โค้ดต่อไปนี้

Swift

if (UIApplication.shared.canOpenURL(URL(string:"comgooglemaps://")!)) {
  UIApplication.shared.openURL(URL(string:
    "comgooglemaps://?center=40.765819,-73.975866&zoom=14&views=traffic")!)
} else {
  print("Can't use comgooglemaps://");
}

Objective-C

if ([[UIApplication sharedApplication] canOpenURL:
     [NSURL URLWithString:@"comgooglemaps://"]]) {
  [[UIApplication sharedApplication] openURL:
   [NSURL URLWithString:@"comgooglemaps://?center=40.765819,-73.975866&zoom=14&views=traffic"]];
} else {
  NSLog(@"Can't use comgooglemaps://");
}

แสดงแผนที่

ใช้ URL Scheme เพื่อแสดงแผนที่ในระดับการซูมและตำแหน่งที่ระบุ นอกจากนี้ คุณยังวางซ้อนมุมมองอื่นๆ ไว้เหนือแผนที่ หรือแสดงภาพ Street View ได้ด้วย

พารามิเตอร์

พารามิเตอร์ทั้งหมดต่อไปนี้ไม่บังคับ หากไม่ได้ตั้งค่าพารามิเตอร์ใดๆ URL Scheme จะเปิดแอป Google Maps สำหรับ iOS

  • center: นี่คือจุดศูนย์กลางของวิวพอร์ตแผนที่ รูปแบบคือสตริง latitude,longitude ที่คั่นด้วยคอมมา
  • mapmode: กำหนดประเภทแผนที่ที่จะแสดง ตั้งค่าได้เป็น standard หรือ streetview หากไม่ได้ระบุ ระบบจะใช้การตั้งค่าแอปพลิเคชันปัจจุบัน
  • views: เปิด/ปิดมุมมองที่เฉพาะเจาะจง ตั้งค่าได้เป็น satellite, traffic หรือ transit คุณตั้งค่าหลายค่าได้โดยใช้เครื่องหมายคอมมาเป็นตัวคั่น หากระบุพารามิเตอร์โดยไม่มีค่า ระบบจะล้างมุมมองทั้งหมด
  • zoom: ระบุระดับการซูมของแผนที่

URL ตัวอย่างนี้จะแสดงแผนที่ที่กึ่งกลางอยู่ที่นิวยอร์กด้วยการซูมระดับ 14 และเปิดมุมมองการจราจร

comgooglemaps://?center=40.765819,-73.975866&zoom=14&views=traffic

แผนที่การจราจรในนิวยอร์ก

ตัวอย่างเพิ่มเติมมีดังนี้

comgooglemaps://?center=37.788463,-122.392545&zoom=12
comgooglemaps://?center=46.414382,10.013988&mapmode=streetview

ใช้รูปแบบนี้เพื่อแสดงคำค้นหาในตำแหน่งวิวพอร์ตที่ระบุ

พารามิเตอร์

นอกเหนือจากพารามิเตอร์ที่ใช้แสดงแผนที่แล้ว การค้นหายังรองรับพารามิเตอร์ q ด้วย

  • q: สตริงค้นหาสำหรับการค้นหา

URL ตัวอย่างนี้จะค้นหา "พิซซ่า" ในบริเวณรอบๆ ตำแหน่งที่ระบุ

comgooglemaps://?q=Pizza&center=37.759748,-122.427135

พิซซ่าใกล้เคียง

ตัวอย่างเพิ่มเติมมีดังนี้

comgooglemaps://?q=Steamers+Lane+Santa+Cruz,+CA&center=37.782652,-122.410126&views=satellite,traffic&zoom=15
comgooglemaps://?q=Google+Japan,+Minato,+Tokyo,+Japan&center=35.660888,139.73073&zoom=15&views=transit

แสดงเส้นทาง

ใช้รูปแบบนี้เพื่อขอและแสดงเส้นทางระหว่าง 2 ตำแหน่ง นอกจากนี้ คุณยังระบุรูปแบบการเดินทางได้ด้วย

พารามิเตอร์

  • saddr: กำหนดจุดเริ่มต้นสำหรับการค้นหาเส้นทาง ซึ่งอาจเป็นละติจูด,ลองจิจูดหรือที่อยู่ในรูปแบบคำค้นหา หากเป็นสตริงค้นหาที่แสดงผลลัพธ์มากกว่า 1 รายการ ระบบจะเลือกผลลัพธ์แรก หากปล่อยให้ค่าว่างไว้ ระบบจะใช้ตำแหน่งปัจจุบันของผู้ใช้
  • daddr: กำหนดจุดสิ้นสุดสำหรับการค้นหาเส้นทาง มีรูปแบบและลักษณะการทำงานเหมือนกับ saddr
  • directionsmode: รูปแบบการเดินทาง ตั้งค่าได้เป็น driving, transit, bicycling หรือ walking

URL ตัวอย่างนี้จะแสดงเส้นทางการขนส่งสาธารณะระหว่าง Google NYC กับสนามบิน JFK

comgooglemaps://?saddr=Google+Inc,+8th+Avenue,+New+York,+NY&daddr=John+F.+Kennedy+International+Airport,+Van+Wyck+Expressway,+Jamaica,+New+York&directionsmode=transit

เส้นทางขนส่งสาธารณะ

ตัวอย่างเพิ่มเติมมีดังนี้

comgooglemaps://?saddr=Google,+1600+Amphitheatre+Parkway,+Mountain+View,+CA+94043&daddr=Google+Inc,+345+Spear+Street,+San+Francisco,+CA&center=37.422185,-122.083898&zoom=10
comgooglemaps://?saddr=2025+Garcia+Ave,+Mountain+View,+CA,+USA&daddr=Google,+1600+Amphitheatre+Parkway,+Mountain+View,+CA,+United+States&center=37.423725,-122.0877&directionsmode=walking&zoom=17

เพิ่มการนำทางลงในแอป

การเปิดแอป Google Maps สำหรับ iOS ด้วยคำขอเส้นทางจะช่วยให้ผู้ใช้เข้าถึงการนำทางแบบเลี้ยวต่อเลี้ยวจากแอปของคุณได้ คุณสามารถใช้ URL Scheme comgooglemaps:// ได้

เปิดแอป Google Maps สำหรับ iOS จาก URL ของ Google Maps บนเดสก์ท็อป

หากแอปของคุณมีสิทธิ์เข้าถึง URL ของ Google Maps ที่มีอยู่ก่อนแล้ว เช่น ในหน้าเว็บหรือในฐานข้อมูล คุณสามารถใช้รูปแบบนี้เพื่อเปิด URL ในแอป Google Maps สำหรับ iOS ซึ่งจะมอบประสบการณ์การใช้งานบนอุปกรณ์เคลื่อนที่ที่ดีที่สุดให้แก่ผู้ใช้

  • แทนที่รูปแบบ http:// หรือ https:// ด้วย comgooglemapsurl://

รูปแบบ URL ของ Google Maps ที่รองรับ

รูปแบบ comgooglemapsurl:// รองรับ URL ที่ตรงกับนิพจน์ทั่วไปนี้ โดย {TLD} หมายถึงโดเมนระดับบนสุดของประเทศที่ถูกต้อง เราได้เพิ่มการขึ้นบรรทัดใหม่เพื่อความชัดเจน

(http(s?)://)?
((maps\.google\.{TLD}/)|
 ((www\.)?google\.{TLD}/maps/)|
 (goo.gl/maps/))
.*

ตรวจสอบว่าแอป Google Maps พร้อมใช้งานหรือไม่

ก่อนอื่น ให้ตรวจสอบว่าแอป Google Maps สำหรับ iOS พร้อมใช้งานในอุปกรณ์และรองรับรูปแบบ URL ดังนี้

Swift

UIApplication.shared.canOpenURL(URL(string:"comgooglemapsurl://")!)

Objective-C

[[UIApplication sharedApplication] canOpenURL:
   [NSURL URLWithString:@"comgooglemapsurl://"]];

ตัวอย่าง

ตัวอย่าง URL ทั่วไปของ Google Maps:

URL เดิมของ Google Maps:

https://www.google.com/maps/preview/@42.585444,13.007813,6z

การใช้ URL Scheme:

comgooglemapsurl://www.google.com/maps/preview/@42.585444,13.007813,6z

ตัวอย่าง URL ทั่วไปของ Google Maps:

URL เดิมของ Google Maps:

https://maps.google.com/?q=@37.3161,-122.1836

การใช้ URL Scheme:

comgooglemapsurl://maps.google.com/?q=@37.3161,-122.1836