iOS 9 ve sonraki sürümleri çalıştıran cihazlarda, bir Google Haritalar URL'niz olduğunda Google Haritalar'ı başlatmak için Evrensel Bağlantıları kullanabilirsiniz.
iOS için Google Haritalar uygulamasını başlatmak ve arama yapmak, yol tarifi istekleri almak ve harita görünümlerini görüntülemek için Google Haritalar URL şemasını kullanabilirsiniz. Google Haritalar'ı başlattığınızda paket tanımlayıcınız istek kapsamında otomatik olarak gönderilir.
Google Haritalar URL şemasını kullanmak için bir Google API anahtarına ihtiyacınız yoktur.
Geçiş Bağlantıları ve Google Haritalar
iOS için Google Haritalar, iOS 9 veya sonraki sürümleri çalıştıran cihazlarda Geçiş Bağlantıları'nı destekler.
URL'niz aşağıdaki normal ifadeyle eşleşiyorsa ve cihaz iOS 9 veya sonraki bir sürümü çalıştırıyorsa doğrudan openURL: yöntemini kullanmayı düşünebilirsiniz.
(http(s?)://)?
((maps\.google\.{TLD}/)|
((www\.)?google\.{TLD}/maps/)|
(goo.gl/maps/))
.*
Örneğin,
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"]];
Genel bakış
URL şeması, başka bir iOS uygulamasından veya bir web uygulamasından yerel iOS uygulaması başlatmanıza olanak tanır. Başlatılan uygulamaya aktarılacak URL'de seçenekleri ayarlayabilirsiniz. iOS için Google Haritalar uygulaması aşağıdaki URL şemalarını destekler:
comgooglemaps://
vecomgooglemaps-x-callback://
- Bu şemalar, iOS için Google Haritalar uygulamasını başlatmanızı ve çeşitli işlemlerden birini gerçekleştirmenizi sağlar:- Bir haritayı belirtilen bir konumda ve yakınlaştırma düzeyinde görüntüleyin.
- Konumları veya yerleri arayın ve bir haritada görüntüleyin.
- Bir konumdan diğerine yol tarifi isteyin. Yol tarifi, dört ulaşım şekli için verilebilir: araba, yürüme, bisiklet ve toplu taşıma.
- Uygulamanıza navigasyon ekleyin.
- iOS 8'de, uygulama tamamlandığında
comgooglemaps-x-callback://
kullanarak bir geri çağırma yapın. Geri çağırma işlevleri, genellikle kullanıcıyı iOS için Google Haritalar'ı ilk açan uygulamaya geri döndürmek için kullanılır. iOS 9'da sistemin, durum çubuğunun sol köşesinde otomatik olarak bir "Geri dön" bağlantısı sağlayacağını unutmayın.
comgooglemapsurl://
- Bu şema, masaüstü Google Haritalar web sitesinden türetilen bir URL'yi kullanarak iOS için Google Haritalar uygulamasını başlatmanıza olanak tanır. Bu, Google Haritalar web sitesini yüklemek yerine kullanıcılarınıza yerel bir mobil deneyim sunabileceğiniz anlamına gelir.- Orijinal URL,
maps.google.com
veyagoogle.com/maps
için ya dacom
yerine geçerli herhangi bir üst düzey ülke alanı kullanıyor olabilir.goo.gl/maps
yönlendirme URL'si de aktarabilirsiniz. comgooglemapsurl://
URL şemasıylax-source
vex-success
parametrelerini kullanarak geri arama yapabilirsiniz.
- Orijinal URL,
iOS için Google Haritalar uygulamasını başlatma ve belirli bir işlevi gerçekleştirme
iOS için Google Haritalar uygulamasını başlatmak ve isteğe bağlı olarak desteklenen işlevlerden birini gerçekleştirmek için aşağıdaki biçimde bir URL şeması kullanın:
comgooglemaps://?parameters
veya:
comgooglemaps-x-callback://?parameters
Parametreler, bu belgenin ilerleyen bölümlerinde ayrıntılı olarak açıklanmıştır.
Cihazda Google Haritalar uygulamasının kullanılabilirliği kontrol ediliyor
Bu URL'lerden birini uygulamanızda bir kullanıcıya göstermeden önce, uygulamanın yüklü olduğunu doğrulamanız gerekir. Uygulamanız, URL şemasının kullanılabilir olup olmadığını şu kodla kontrol edebilir:
Swift
UIApplication.shared.canOpenURL(URL(string:"comgooglemaps://")!)
Objective-C
[[UIApplication sharedApplication] canOpenURL:
[NSURL URLWithString:@"comgooglemaps://"]];
Örneğin, New York'taki Central Park'ın bir haritasını görüntülemek için aşağıdaki kodu kullanabilirsiniz:
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://");
}
Harita görüntüleniyor
Haritayı belirtilen bir yakınlaştırma düzeyinde ve konumda görüntülemek için URL şemasını kullanın. Ayrıca, haritanızın üzerine başka görünümler ekleyebilir veya Street View görüntülerini gösterebilirsiniz.
Parametreler
Aşağıdaki parametrelerin tümü isteğe bağlıdır. Hiçbir parametre ayarlanmazsa URL şeması, iOS için Google Haritalar uygulamasını başlatır.
center
: Bu, harita görünümünün merkez noktasıdır. Virgülle ayrılmışlatitude,longitude
dizesi olarak biçimlendirilir.mapmode
: Gösterilen haritanın türünü ayarlar.standard
veyastreetview
olarak ayarlanabilir. Belirtilmezse mevcut uygulama ayarları kullanılır.views
: Belirli görünümleri açar/kapatır. Şu değere ayarlanabilir:satellite
,traffic
veyatransit
. Virgül ayırıcı kullanarak birden çok değer ayarlanabilir. Parametre herhangi bir değer olmadan belirtilirse tüm görünümler temizlenir.zoom
: Haritanın yakınlaştırma düzeyini belirtir.
Bu örnek URL'de, trafik görünümü açık olacak şekilde, harita New York merkezinde 14 yakınlaştırma ayarıyla gösterilmektedir:
comgooglemaps://?center=40.765819,-73.975866&zoom=14&views=traffic
Bazı ek örnekler:
comgooglemaps://?center=37.788463,-122.392545&zoom=12
comgooglemaps://?center=46.414382,10.013988&mapmode=streetview
Arama
Arama sorgularını belirtilen bir görüntü alanı konumunda görüntülemek için bu şemayı kullanın.
Parametreler
Arama, bir haritayı görüntülemek için kullanılan parametrelere ek olarak q
parametresini de destekler.
q
: Aramanızla ilgili sorgu dizesi.
Belirtilen konumda "Pizza" araması için örnek URL:
comgooglemaps://?q=Pizza¢er=37.759748,-122.427135
Bazı ek örnekler:
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
Yol tarifi görüntüleniyor
İki konum arasında yol tarifi istemek ve görüntülemek için bu şemayı kullanın. Ulaşım şeklini de belirtebilirsiniz.
Parametreler
saddr
: Yol tarifi aramaları için başlangıç noktasını ayarlar. Bu bir enlem,boylam veya sorgu biçimindeki bir adres olabilir. Birden fazla sonuç döndüren bir sorgu dizesiyse ilk sonuç seçilir. Değer boş bırakılırsa kullanıcının mevcut konumu kullanılır.daddr
: Yol tarifi aramaları için bitiş noktasını ayarlar.saddr
ile aynı biçime ve davranışa sahiptir.directionsmode
: Ulaşım yöntemi. Şu değere ayarlanabilir:driving
,transit
,bicycling
veyawalking
.
Örnek URL, Google NYC ve JFK Havaalanı arasındaki toplu taşıma yol tariflerini göstermektedir:
comgooglemaps://?saddr=Google+Inc,+8th+Avenue,+New+York,+NY&daddr=John+F.+Kennedy+International+Airport,+Van+Wyck+Expressway,+Jamaica,+New+York&directionsmode=transit
Bazı ek örnekler:
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
Geri çağırma URL'si belirtme
Bir geri çağırma URL'si belirtmek isterseniz comgooglemaps-x-callback://
URL şemasını kullanmanız gerekir. Bu şema, x-callback-url spesifikasyonuna bağlıdır. iOS için Google Haritalar uygulamasını bu şema ile çağırdığınızda, uygulama ekranın üst kısmında bir düğme görüntüler. Bu düğmeye dokunduğunuzda, belirttiğiniz URL'ye geri arama yapılır.
comgooglemaps-x-callback://
talepleri şu şekilde olmalıdır:
comgooglemaps-x-callback://?parameters
Parametreler
X geri çağırma URL şeması, aşağıdaki ek parametrelerle birlikte comgooglemaps://
URL şemasıyla aynı parametreleri kabul eder. Her iki parametre de gereklidir.
x-source
— X geri çağırma isteğini gönderen uygulamanın adı. Kısa adlar tercih edilir.x-success
— Tamamlandığında aranacak URL. Bu genellikle kendi uygulamanız için kullanıcıların orijinal uygulamaya geri dönmesine olanak tanıyan bir URL şeması olacaktır.
Uygulamanızın, geri çağırma URL'sine yanıt verebilmesi için kendi URL şemasını kaydetmesi gerektiğini unutmayın.
- Uygulamanızın, geri çağırma isteğine yanıt verebilecek bir URL şeması kaydettiğinden emin olun.
x-source
parametresindeki geri arama düğmesinin etiketini iletin.x-success
parametresindeki geri çağırma URL'sini iletin.
Aşağıdaki örnek, iOS için Google Haritalar uygulamasını başlatır ve New York merkezli bir harita görüntüler. Uygulama ayrıca "SourceApp" etiketli bir düğme görüntüler.
"SourceApp" düğmesi tıklandığında iOS için Google Haritalar uygulaması, sourceapp://?resume=true
kimlikli hayali bir URL şemasına geri arama yapar.
comgooglemaps-x-callback://?center=40.765819,-73.975866&zoom=14
&x-success=sourceapp://?resume=true
&x-source=SourceApp
comgooglemaps://
URL şemasında olduğu gibi, öncelikle iOS için Google Haritalar uygulamasının cihazda kullanılabildiğini ve x geri çağırma URL şemasını desteklediğini doğrulamanız gerekir. Uygulamanız, URL şemasının kullanılabilir olup olmadığını aşağıdaki kodla kontrol edebilir:
Swift
UIApplication.shared.canOpenURL(URL(string:"comgooglemaps-x-callback://")!)
Objective-C
[[UIApplication sharedApplication] canOpenURL:
[NSURL URLWithString:@"comgooglemaps-x-callback://"]];
Bu, kullanıcıların tatlı aradıktan sonra bir uygulamaya geri dönmesini sağlayan bir URL örneğidir.
comgooglemaps-x-callback://?q=dessert¢er=37.759748,-122.427135
&x-success=sourceapp://?resume=true
&x-source=Nom+Nom
Uygulamanıza gezinme ekleme
iOS için Google Haritalar uygulamasını yol tarifi isteğiyle başlatmak, kullanıcılarınıza uygulamanızdan adım adım
Navigasyon erişimi sağlamanın kolay bir yoludur. comgooglemaps://
veya comgooglemaps-x-callback://
URL şemalarını kullanabilirsiniz.
Bu kod snippet'i, yol tarifi istemek için comgooglemaps-x-callback://
şemasının nasıl kullanılacağını ve kullanıcı hazır olduğunda uygulamanıza nasıl dönüleceğini gösterir. Kod, aşağıdakileri yapar:
comgooglemaps-x-callback://
URL şemasının kullanılabildiğini doğrulayın.- iOS için Google Haritalar uygulamasını başlatın ve New York şehrindeki JFK Havalimanı için yol tarifi isteyin. Kullanıcının mevcut konumundan yol tarifi istemek için başlangıç adresini boş bırakın.
- iOS için Google Haritalar uygulamasına "AirApp" etiketli bir düğme ekleyin. Düğme etiketi,
x-source
parametresiyle tanımlanır. - Kullanıcılar geri düğmesini tıkladığında hayali URL şemasını (
sourceapp://
) çağırın.
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.");
}
Bir Google Haritalar masaüstü URL'sinden iOS için Google Haritalar uygulamasını başlatma
Uygulamanızın önceden var olan bir Google Haritalar URL'sine (örneğin bir web sayfası veya veritabanında) erişimi varsa URL'yi iOS için Google Haritalar uygulamasında açmak için bu şemayı kullanabilir ve böylece kullanıcılarınıza en iyi yerel deneyimi sunabilirsiniz.
http://
veyahttps://
şemasınıcomgooglemapsurl://
ile değiştirin.- Geri çağırma kullanmak istiyorsanız
x-source
vex-success
parametrelerini ekleyin. Bu şema, x-callback-url spesifikasyonuna bağlıdır.
Desteklenen Google Haritalar URL biçimleri
comgooglemapsurl://
şeması, bu normal ifade ile eşleşen URL'leri destekler. Burada {TLD}
, geçerli herhangi bir üst düzey ülke alan adını ifade eder. Netlik sağlamak için satır sonları eklenmiştir:
(http(s?)://)?
((maps\.google\.{TLD}/)|
((www\.)?google\.{TLD}/maps/)|
(goo.gl/maps/))
.*
Google Haritalar uygulamasının kullanılabilirliği kontrol ediliyor
Öncelikle, iOS için Google Haritalar uygulamasının cihazda bulunduğunu ve URL şemasını desteklediğini doğrulayın:
Swift
UIApplication.shared.canOpenURL(URL(string:"comgooglemaps-x-callback://")!)
Objective-C
[[UIApplication sharedApplication] canOpenURL:
[NSURL URLWithString:@"comgooglemapsurl://"]];
Örnekler
Genel bir Google Haritalar URL'si örneği:
Orijinal Google Haritalar URL'si:
https://www.google.com/maps/preview/@42.585444,13.007813,6z
URL şemasını kullanarak:
comgooglemapsurl://www.google.com/maps/preview/@42.585444,13.007813,6z
Genel bir Google Haritalar URL'si örneği:
Orijinal Google Haritalar URL'si:
https://maps.google.com/?q=@37.3161,-122.1836
URL şemasını kullanarak:
comgooglemapsurl://maps.google.com/?q=@37.3161,-122.1836
X-callback ile Tokyo Kulesi için yol tarifi isteme örneği:
Orijinal Google Haritalar URL'si:
http://maps.google.com/maps?f=d&daddr=Tokyo+Tower,+Tokyo,+Japan&sll=35.6586,139.7454&sspn=0.2,0.1&nav=1
Aşağıdaki örnek, iOS için Google Haritalar uygulamasını başlatır ve orijinal Google Haritalar URL'sinde (yukarıda) belirtildiği gibi Tokyo Kulesi'ne yönelik yol tariflerini içeren bir harita görüntüler. Uygulama ayrıca "SourceApp" etiketli bir düğme görüntüler. "SourceApp" düğmesi tıklandığında iOS için Google Haritalar uygulaması, sourceapp://?resume=true
hayali bir URL şemasına geri arama yapar.
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