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

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

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

คุณไม่จำเป็นต้องใช้คีย์ 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://"]];

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

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