Lược đồ URL của Google Maps dành cho iOS

Trên các thiết bị chạy iOS 9 trở lên, bạn có thể sử dụng Đường liên kết phổ quát để khởi chạy Google Maps khi có URL Google Maps.

Bạn có thể sử dụng lược đồ URL Google Maps để khởi chạy ứng dụng Google Maps cho iOS, thực hiện tìm kiếm, yêu cầu chỉ đường và hiển thị chế độ xem bản đồ. Khi bạn khởi chạy Google Maps, mã nhận dạng gói của bạn sẽ tự động được gửi trong yêu cầu.

Bạn không cần khoá API của Google để sử dụng lược đồ URL Google Maps.

Google Maps cho iOS hỗ trợ Đường liên kết phổ quát trên các thiết bị chạy iOS 9 trở lên.

Nếu URL của bạn khớp với biểu thức chính quy sau đây và thiết bị đang chạy iOS 9 trở lên, bạn có thể cân nhắc sử dụng trực tiếp phương thức openURL:.

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

Ví dụ:

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"]];

Tổng quan

Lược đồ URL cho phép bạn khởi chạy ứng dụng iOS từ một ứng dụng iOS khác hoặc ứng dụng web. Bạn có thể đặt các tuỳ chọn trong URL được chuyển đến ứng dụng đã khởi chạy. Ứng dụng Google Maps cho iOS hỗ trợ các lược đồ URL sau:

  • comgooglemaps:// – Lược đồ này cho phép bạn khởi chạy ứng dụng Google Maps cho iOS và thực hiện một trong số các thao tác sau:

    • Hiển thị bản đồ ở một vị trí và mức thu phóng cụ thể.
    • Tìm kiếm vị trí hoặc địa điểm và hiển thị chúng trên bản đồ.
    • Yêu cầu chỉ đường từ vị trí này đến vị trí khác. Bạn có thể xem đường đi cho 4 phương thức di chuyển: lái xe, đi bộ, đi xe đạp và phương tiện công cộng.
    • Thêm tính năng chỉ đường vào ứng dụng của bạn.
  • comgooglemapsurl:// – Lược đồ này cho phép bạn khởi chạy ứng dụng Google Maps cho iOS bằng một URL bắt nguồn từ trang web Google Maps trên máy tính. Điều này có nghĩa là bạn có thể mang đến cho người dùng trải nghiệm trên thiết bị di động thay vì tải trang web Google Maps.

    • URL gốc có thể là maps.google.com hoặc google.com/maps, hoặc sử dụng bất kỳ miền cấp cao nhất hợp lệ nào của quốc gia thay vì com. Bạn cũng có thể chuyển các URL chuyển hướng goo.gl/maps.

Khởi chạy ứng dụng Google Maps cho iOS và thực hiện một chức năng cụ thể

Để khởi chạy ứng dụng Google Maps cho iOS và tuỳ ý thực hiện một trong các chức năng được hỗ trợ, hãy sử dụng lược đồ URL theo biểu mẫu sau:

comgooglemaps://?parameters

Các tham số được mô tả chi tiết ở phần sau của tài liệu này.

Kiểm tra xem ứng dụng Google Maps có dùng được trên thiết bị hay không

Trước khi giới thiệu một trong các URL này cho người dùng trong ứng dụng, trước tiên, bạn nên xác minh rằng ứng dụng đã được cài đặt. Ứng dụng của bạn có thể kiểm tra xem lược đồ URL có dùng được hay không bằng mã sau:

Swift

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

Objective-C

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

Ví dụ: để hiển thị bản đồ Công viên Trung tâm ở New York, bạn có thể sử dụng mã sau:

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://");
}

Hiển thị bản đồ

Sử dụng lược đồ URL để hiển thị bản đồ ở một vị trí và mức thu phóng cụ thể. Bạn cũng có thể phủ các khung hiển thị khác lên trên bản đồ hoặc hiển thị hình ảnh trong Chế độ xem đường phố.

Tham số

Tất cả các tham số sau đây đều không bắt buộc. Nếu bạn không đặt tham số nào, lược đồ URL sẽ khởi chạy ứng dụng Google Maps cho iOS.

  • center: Đây là điểm giữa của khung hiển thị bản đồ. Được định dạng dưới dạng chuỗi latitude,longitude được phân tách bằng dấu phẩy.
  • mapmode: Đặt loại bản đồ được hiển thị. Có thể đặt thành: standard hoặc streetview. Nếu bạn không chỉ định, hệ thống sẽ sử dụng các chế độ cài đặt hiện tại của ứng dụng.
  • views: Bật/tắt các khung hiển thị cụ thể. Có thể đặt thành: satellite, traffic hoặc transit. Bạn có thể đặt nhiều giá trị bằng cách sử dụng dấu phẩy để phân tách. Nếu bạn chỉ định tham số mà không có giá trị, thì tham số đó sẽ xoá tất cả các khung hiển thị.
  • zoom: Chỉ định mức thu phóng của bản đồ.

URL ví dụ này hiển thị bản đồ tập trung vào New York ở mức thu phóng 14 với khung hiển thị giao thông:

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

Bản đồ giao thông ở New York

Một số ví dụ khác:

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

Sử dụng lược đồ này để hiển thị cụm từ tìm kiếm ở một vị trí cụ thể trong khung hiển thị.

Tham số

Ngoài các tham số dùng để hiển thị bản đồ, tính năng Tìm kiếm còn hỗ trợ tham số q.

  • q: Chuỗi truy vấn cho nội dung tìm kiếm của bạn.

URL ví dụ này tìm kiếm "Pizza" xung quanh vị trí được chỉ định:

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

Pizza quanh đây

Một số ví dụ khác:

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

Hiển thị đường đi

Sử dụng lược đồ này để yêu cầu và hiển thị đường đi giữa hai vị trí. Bạn cũng có thể chỉ định phương thức di chuyển.

Tham số

  • saddr: Đặt điểm xuất phát cho các lượt tìm kiếm đường đi. Đây có thể là một địa chỉ được định dạng dưới dạng vĩ độ,kinh độ hoặc một cụm từ tìm kiếm. Nếu đây là một chuỗi truy vấn trả về nhiều kết quả, thì kết quả đầu tiên sẽ được chọn. Nếu bạn để trống giá trị này, thì hệ thống sẽ sử dụng vị trí hiện tại của người dùng.
  • daddr: Đặt điểm cuối cho các lượt tìm kiếm đường đi. Có cùng định dạng và hành vi như saddr.
  • directionsmode: Phương thức di chuyển. Có thể đặt thành: driving, transit, bicycling hoặc walking.

URL ví dụ này hiển thị đường đi bằng phương tiện công cộng giữa Google NYC và Sân bay JFK:

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

Chỉ đường phương tiện

Một số ví dụ khác:

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

Thêm tính năng chỉ đường vào ứng dụng của bạn

Việc khởi chạy ứng dụng Google Maps cho iOS bằng yêu cầu chỉ đường sẽ giúp người dùng truy cập vào tính năng đường đi từng chặng trong ứng dụng của bạn. Bạn có thể sử dụng lược đồ URL comgooglemaps://.

Khởi chạy ứng dụng Google Maps cho iOS từ URL Google Maps trên máy tính

Nếu ứng dụng của bạn có quyền truy cập vào URL Google Maps đã tồn tại trước đó, chẳng hạn như trên trang web hoặc trong cơ sở dữ liệu, thì bạn có thể sử dụng lược đồ này để mở URL trong ứng dụng Google Maps cho iOS, nhờ đó mang đến cho người dùng trải nghiệm tốt nhất trên thiết bị di động.

  • Thay thế lược đồ http:// hoặc https:// bằng comgooglemapsurl://.

Các định dạng URL Google Maps được hỗ trợ

Lược đồ comgooglemapsurl:// hỗ trợ các URL khớp với biểu thức chính quy này, trong đó {TLD} đề cập đến bất kỳ miền cấp cao nhất hợp lệ nào của quốc gia. Chúng tôi đã thêm dấu ngắt dòng để cho rõ ràng:

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

Kiểm tra xem ứng dụng Google Maps có dùng được hay không

Trước tiên, hãy xác minh rằng ứng dụng Google Maps cho iOS có dùng được trên thiết bị hay không và có hỗ trợ lược đồ URL hay không:

Swift

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

Objective-C

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

Ví dụ

Ví dụ về URL Google Maps chung:

URL Google Maps gốc:

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

Sử dụng lược đồ URL:

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

Ví dụ về URL Google Maps chung:

URL Google Maps gốc:

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

Sử dụng lược đồ URL:

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