รูปแบบ 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 ช่วยให้คุณเปิดแอปพลิเคชัน 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 นอกจากนี้ คุณยังส่งต่อ goo.gl/maps URL การเปลี่ยนเส้นทางได้ด้วย

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

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

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

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

พารามิเตอร์

นอกจากพารามิเตอร์ที่ใช้เพื่อแสดงแผนที่แล้ว Search ยังรองรับ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 Scheme ต่อไปนี้

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