Na urządzeniach z systemem iOS 9 lub nowszym możesz używać: Użyj Universal Links do uruchomienia Google Mapy, jeśli masz adres URL w Mapach Google.
Możesz skorzystać ze schematu adresu URL Map Google, aby uruchomić tag Aplikacja Mapy Google na iOS – wyszukiwanie i wyznaczanie trasy żądania i wyświetlenia mapy. Po uruchomieniu Map Google pakiet jest automatycznie wysyłany jako część żądania.
Aby korzystać ze schematu URL Map Google, nie potrzebujesz klucza interfejsu API Google.
Linki uniwersalne i Mapy Google
Mapy Google na iOS obsługują Uniwersalne Linki na urządzeniach z iOS 9 lub nowszym.
Jeśli adres URL pasuje do następującego wyrażenia regularnego, a urządzenie jest uruchomione iOS 9 lub nowszego, warto rozważyć bezpośrednie używanie metody openURL:.
(http(s?)://)?
((maps\.google\.{TLD}/)|
((www\.)?google\.{TLD}/maps/)|
(goo.gl/maps/))
.*
Na przykład
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"]];
Omówienie
Schemat adresu URL pozwala uruchomić natywną aplikację iOS z innej aplikacji na iOS lub aplikacji internetowej. Możesz ustawić opcje w adresie URL, który będzie przekazywany do uruchomioną aplikację. Aplikacja Mapy Google na iOS obsługuje ten adres URL schematy:
comgooglemaps://
icomgooglemaps-x-callback://
– te schematy pozwalają uruchomić aplikację Mapy Google na iOS i wykonać czynności:- Możesz wyświetlić mapę w określonej lokalizacji i na poziomie powiększenia.
- Wyszukaj lokalizacje lub miejsca i wyświetl je na mapie.
- Uzyskiwanie wskazówek dojazdu z jednego miejsca do drugiego. Wskazówki dojazdu można zwrócić dla czterech środków transportu: samochodu, pieszego, rowerowego i publicznego transportem publicznym.
- Dodaj nawigację do aplikacji.
- W iOS 8 wykonaj wywołanie zwrotne po zakończeniu działania aplikacji, używając
comgooglemaps-x-callback://
Wywołania zwrotne są często wykorzystywane do powrót użytkownika do aplikacji, w której oryginalnie otworzyły się Mapy Google na iOS. Pamiętaj, że w iOS 9 system automatycznie udostępni w lewym rogu pasku stanu.
comgooglemapsurl://
– ten schemat umożliwia uruchomienie aplikacji Mapy Google w iOS, korzystając z adresu URL pochodzącego z witryny Map Google na komputery. Oznacza to, że aby zapewnić użytkownikom natywne środowisko mobilne, a nie po prostu wczytywania strony Map Google.- Pierwotnym adresem URL może być
maps.google.com
lubgoogle.com/maps
, lub użycie prawidłowej domeny krajowej najwyższego poziomu zamiast domenycom
. Możesz również przekazaćgoo.gl/maps
adresy URL przekierowania. - Możesz oddzwonić, używając
x-source
ix-success
ze schematem adresu URLcomgooglemapsurl://
.
- Pierwotnym adresem URL może być
Uruchomienie aplikacji Mapy Google na iOS i wykonanie konkretnej funkcji
Aby uruchomić aplikację Mapy Google na iOS i opcjonalnie wykonać jedną z funkcji, użyj schematu adresu URL w postaci:
comgooglemaps://?parameters
lub
comgooglemaps-x-callback://?parameters
Parametry zostały szczegółowo opisane w dalszej części tego dokumentu.
Sprawdzam dostępność aplikacji Mapy Google na urządzeniu
Przed pokazaniem jednego z tych adresów URL użytkownikowi w aplikacji sprawdzić, czy aplikacja jest zainstalowana. Aplikacja może sprawdzić, czy adres URL schemat jest dostępny z następującym kodem:
Swift
UIApplication.shared.canOpenURL(URL(string:"comgooglemaps://")!)
Objective-C
[[UIApplication sharedApplication] canOpenURL:
[NSURL URLWithString:@"comgooglemaps://"]];
Aby na przykład wyświetlić mapę Central Parku w Nowym Jorku, możesz użyć ten kod:
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://");
}
Wyświetlanie mapy
Aby wyświetlić mapę z określonym powiększeniem i w określonej lokalizacji, użyj schematu adresu URL. Możesz też nakładać inne widoki na mapę lub wyświetlać zdjęcia Street View.
Parametry
Wszystkie parametry podane poniżej są opcjonalne. Jeśli nie ustawisz żadnych parametrów, funkcja Schemat adresu URL uruchomi aplikację Mapy Google na iOS.
center
: to centralny punkt widocznego obszaru mapy. Sformatowane jako przecinek rozdzielany ciąg znakówlatitude,longitude
.mapmode
: ustawia rodzaj wyświetlanej mapy. Możliwe wartości:standard
lubstreetview
Jeśli jej nie określisz, zostaną zastosowane bieżące ustawienia aplikacji .views
: włącza lub wyłącza określone widoki. Możliwe wartości:satellite
,traffic
lubtransit
. Za pomocą separatorem przecinkiem. Jeśli parametr jest określony bez wartości, to zostanie wyczyścić wszystkie widoki.zoom
: określa poziom powiększenia mapy.
W tym przykładowym adresie URL wyświetlana jest mapa wyśrodkowana na Nowym Jorku przy powiększeniu 14 oraz widok natężenia ruchu w:
comgooglemaps://?center=40.765819,-73.975866&zoom=14&views=traffic
Oto kilka dodatkowych przykładów:
comgooglemaps://?center=37.788463,-122.392545&zoom=12
comgooglemaps://?center=46.414382,10.013988&mapmode=streetview
Szukaj
Ten schemat służy do wyświetlania wyszukiwanych haseł w określonej lokalizacji widocznego obszaru.
Parametry
Oprócz parametrów używanych do wyświetlania mapy wyszukiwarka obsługuje q
.
q
: ciąg zapytania do wyszukania.
Ten przykładowy adres URL do wyszukiwania hasła „pizza” w określonej lokalizacji:
comgooglemaps://?q=Pizza¢er=37.759748,-122.427135
Oto kilka dodatkowych przykładów:
comgooglemaps://?q=Steamers+Lane+Santa+Cruz,+CA¢er=37.782652,-122.410126&views=satellite,traffic&zoom=15
comgooglemaps://?q=Google+Japan,+Minato,+Tokyo,+Japan¢er=35.660888,139.73073&zoom=15&views=transit
Wyświetlam trasę
Ten schemat służy do pobierania i wyświetlania wskazówek dojazdu między dwiema lokalizacjami. Możesz też określić środek transportu.
Parametry
saddr
: ustawia punkt początkowy wyszukiwania wskazówek dojazdu. Może to być może to być długość lub szerokość geograficzna albo adres w formacie zapytania. Jeśli jest to zapytanie który zwraca więcej niż jeden wynik, pierwszym wynikiem będzie zaznaczono. Jeśli wartość jest pusta, bieżąca lokalizacja użytkownika .daddr
: ustawia punkt końcowy wyszukiwania wskazówek dojazdu. Ma format i zachowanie cosaddr
.directionsmode
: sposób transportu. Dostępne ustawienia:driving
,transit
,bicycling
lubwalking
.
Przykładowy URL pokazuje wskazówki dojazdu transportem publicznym między Google Nowy Jork a lotnisko JFK:
comgooglemaps://?saddr=Google+Inc,+8th+Avenue,+New+York,+NY&daddr=John+F.+Kennedy+International+Airport,+Van+Wyck+Expressway,+Jamaica,+New+York&directionsmode=transit
Oto kilka dodatkowych przykładów:
comgooglemaps://?saddr=Google,+1600+Amphitheatre+Parkway,+Mountain+View,+CA+94043&daddr=Google+Inc,+345+Spear+Street,+San+Francisco,+CA¢er=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¢er=37.423725,-122.0877&directionsmode=walking&zoom=17
Określanie adresu URL wywołania zwrotnego
Aby określić adres URL wywołania zwrotnego, należy użyć metody
Schemat adresu URL comgooglemaps-x-callback://
. Ten schemat jest zgodny z
specyfikacji x-callback-url. Po wywołaniu aplikacji Mapy Google na iOS
w przypadku tego schematu aplikacja wyświetli przycisk u góry
na ekranie. Kliknięcie tego przycisku spowoduje oddzwonienie do adresu URL, który
określonych przez Ciebie.
Żądania wysyłane do comgooglemaps-x-callback://
muszą mieć następujący format:
comgooglemaps-x-callback://?parameters
Parametry
Schemat URL-a wywołania zwrotnego x akceptuje te same parametry co comgooglemaps://
Schemat adresu URL z wymienionymi poniżej parametrami dodatkowymi. Oba parametry
x-source
– nazwa aplikacji wysyłającej wywołanie zwrotne x użytkownika. Preferowane są krótkie nazwy.x-success
– adres URL, który ma zostać wywołany po zakończeniu. Często schemat adresu URL Twojej aplikacji, umożliwiający użytkownikom powrót do oryginalnej strony aplikacji.
Pamiętaj, że aplikacja musi zarejestrować własny schemat adresu URL, by mogła odpowiedzieć na adres URL wywołania zwrotnego.
- Upewnij się, że aplikacja zarejestrowała schemat adresu URL, który może odpowiadać na żądanie oddzwonienia.
- Przekaż etykietę przycisku wywołania zwrotnego w parametrze
x-source
. - Przekaż adres URL wywołania zwrotnego w parametrze
x-success
.
Poniższy przykład pokazuje uruchomienie aplikacji Mapy Google na iOS i wyświetlenie mapy.
wokół Nowego Jorku. W aplikacji wyświetli się również przycisk „SourceApp”.
Gdy komponent „SourceApp” kliknie przycisk, aplikacja Mapy Google na iOS
wywołanie zwrotne do fikcyjnego schematu adresu URL: sourceapp://?resume=true
.
comgooglemaps-x-callback://?center=40.765819,-73.975866&zoom=14
&x-success=sourceapp://?resume=true
&x-source=SourceApp
Tak jak w przypadku schematu adresu URL comgooglemaps://
, najpierw sprawdź, czy
aplikacja Mapy Google na iOS jest dostępna na urządzeniu i obsługuje
schematem URL-a wywołania zwrotnego x. Aplikacja może sprawdzić, czy schemat adresu URL jest dostępny
następującym kodem:
Swift
UIApplication.shared.canOpenURL(URL(string:"comgooglemaps-x-callback://")!)
Objective-C
[[UIApplication sharedApplication] canOpenURL:
[NSURL URLWithString:@"comgooglemaps-x-callback://"]];
To jest przykład adresu URL, który pozwala użytkownikom wrócić do aplikacji po wyszukaniu deser.
comgooglemaps-x-callback://?q=dessert¢er=37.759748,-122.427135
&x-success=sourceapp://?resume=true
&x-source=Nom+Nom
Dodaję nawigację do aplikacji
Uruchomienie aplikacji Mapy Google na iOS z prośbą o wskazówki dojazdu to prosty sposób
przyznaj użytkownikom dostęp do szczegółowej nawigacji w Twojej aplikacji. Za pomocą
schemat adresu URL comgooglemaps://
albo comgooglemaps-x-callback://
.
Ten fragment kodu pokazuje, jak użyć schematu comgooglemaps-x-callback://
do
uzyskać wskazówki dojazdu, a następnie wrócić do aplikacji, gdy użytkownik będzie gotowy.
wykona te działania:
- Sprawdź, czy schemat adresu URL
comgooglemaps-x-callback://
jest dostępny. - Uruchom aplikację Mapy Google na iOS i poproś o wskazówki dojazdu na lotnisko JFK w w Nowym Jorku. Pozostaw adres początkowy pusty, by uzyskać wskazówki dojazdu z bieżącej lokalizacji użytkownika.
- Dodaj przycisk o nazwie „AirApp” w aplikacji Mapy Google na iOS. Przycisk
etykieta jest zdefiniowana przez parametr
x-source
. - Wywołaj fikcyjny schemat adresu URL (
sourceapp://
), gdy użytkownik kliknie przycisk Wstecz.
Swift
let testURL = URL(string: "comgooglemaps-x-callback://")!
if UIApplication.shared.canOpenURL(testURL) {
let directionsRequest = "comgooglemaps-x-callback://" +
"?daddr=John+F.+Kennedy+International+Airport,+Van+Wyck+Expressway,+Jamaica,+New+York" +
"&x-success=sourceapp://?resume=true&x-source=AirApp"
let directionsURL = URL(string: directionsRequest)!
UIApplication.shared.openURL(directionsURL)
} else {
NSLog("Can't use comgooglemaps-x-callback:// on this device.")
}
Objective-C
NSURL *testURL = [NSURL URLWithString:@"comgooglemaps-x-callback://"];
if ([[UIApplication sharedApplication] canOpenURL:testURL]) {
NSString *directionsRequest = @"comgooglemaps-x-callback://" +
@"?daddr=John+F.+Kennedy+International+Airport,+Van+Wyck+Expressway,+Jamaica,+New+York" +
@"&x-success=sourceapp://?resume=true&x-source=AirApp";
NSURL *directionsURL = [NSURL URLWithString:directionsRequest];
[[UIApplication sharedApplication] openURL:directionsURL];
} else {
NSLog(@"Can't use comgooglemaps-x-callback:// on this device.");
}
Uruchomienie aplikacji Mapy Google na iOS z adresu URL Map Google na komputery
Jeśli aplikacja ma dostęp do wcześniej utworzonego adresu URL w Mapach Google, np. do strony internetowej lub w bazie danych, możesz użyć tego schematu, aby otworzyć URL w aplikacji Mapy Google dla iOS, oferując użytkownikom najlepsze wrażenia natywne.
- Zastąp schemat
http://
lubhttps://
elementemcomgooglemapsurl://
. - Jeśli chcesz skorzystać z oddzwonienia, dodaj
x-source
ix-success
. Schemat ten jest zgodny ze specyfikacją x-callback-url.
Obsługiwane formaty adresów URL w Mapach Google
Schemat comgooglemapsurl://
obsługuje adresy URL, które pasują do tego zwykłego
gdzie {TLD}
odnosi się do dowolnej prawidłowej domeny krajowej najwyższego poziomu. Liniowy
dodaliśmy przerwy w celu uniknięcia wątpliwości:
(http(s?)://)?
((maps\.google\.{TLD}/)|
((www\.)?google\.{TLD}/maps/)|
(goo.gl/maps/))
.*
Sprawdzam dostępność aplikacji Mapy Google
Najpierw sprawdź, czy aplikacja Mapy Google na iOS jest dostępna na urządzeniu. obsługuje schemat adresu URL:
Swift
UIApplication.shared.canOpenURL(URL(string:"comgooglemaps-x-callback://")!)
Objective-C
[[UIApplication sharedApplication] canOpenURL:
[NSURL URLWithString:@"comgooglemapsurl://"]];
Przykłady
Przykład ogólnego adresu URL w Mapach Google:
Oryginalny adres URL Map Google:
https://www.google.com/maps/preview/@42.585444,13.007813,6z
Za pomocą schematu adresu URL:
comgooglemapsurl://www.google.com/maps/preview/@42.585444,13.007813,6z
Przykład ogólnego adresu URL w Mapach Google:
Oryginalny adres URL Map Google:
https://maps.google.com/?q=@37.3161,-122.1836
Za pomocą schematu adresu URL:
comgooglemapsurl://maps.google.com/?q=@37.3161,-122.1836
Przykład prośby o wskazówki dojazdu do Tokyo Tower z wywołaniem zwrotnym x:
Oryginalny adres URL Map Google:
http://maps.google.com/maps?f=d&daddr=Tokyo+Tower,+Tokyo,+Japan&sll=35.6586,139.7454&sspn=0.2,0.1&nav=1
Poniższy przykład pokazuje uruchomienie aplikacji Mapy Google na iOS i wyświetlenie mapy.
z trasą do Tokyo Tower, zgodnie z oryginalnym adresem URL Map Google
(powyżej). W aplikacji wyświetla się również przycisk oznaczony etykietą
„SourceApp”. Gdy komponent „SourceApp” kliknie przycisk aplikacji Mapy Google na iOS.
spowoduje wywołanie zwrotne do fikcyjnego schematu adresu URL: sourceapp://?resume=true
.
comgooglemapsurl://maps.google.com/maps?f=d&daddr=Tokyo+Tower,+Tokyo,+Japan&sll=35.6586,139.7454&sspn=0.2,0.1&nav=1
&x-source=SourceApp
&x-success=sourceapp://?resume=true