iOS için Google Haritalar URL Şeması

Koleksiyonlar ile düzeninizi koruyun İçeriği tercihlerinize göre kaydedin ve kategorilere ayırın.

iOS 9 ve sonraki sürümleri çalıştıran cihazlarda Google Haritalar URL'niz olduğunda Google Haritalar'ı başlatmak için Geçiş Bağlantıları'nı kullanabilirsiniz.

iOS için Google Haritalar uygulamasını başlatmak, arama yapmak, yol tarifi istekleri almak ve harita görüntülemelerini görüntülemek için Google Haritalar URL şemasını kullanabilirsiniz. Google Haritalar'ı başlattığınızda paket tanımlayıcınız isteğin bir parçası olarak otomatik olarak gönderilir.

Google Haritalar URL şemasını kullanmak için Google API anahtarına ihtiyacınız yoktur.

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 openURL: yöntemini doğrudan 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 düzeni sayesinde başka bir iOS uygulamasından veya web uygulamasından yerel bir iOS uygulaması başlatabilirsiniz. Başlatılan uygulamaya aktarılacak URL'de seçenekler belirleyebilirsiniz. iOS için Google Haritalar uygulaması aşağıdaki URL şemalarını destekler:

  • comgooglemaps:// ve comgooglemaps-x-callback://: Bu şemalar, iOS için Google Haritalar uygulamasını başlatıp çeşitli işlemlerden birini gerçekleştirmenizi sağlar:

    • Haritayı belirli bir konum ve yakınlaştırma düzeyinde görüntüleme.
    • Konumları veya yerleri arayın ve bunları bir haritada görüntüleyin.
    • Bir konumdan diğerine yol tarifi isteyin. Yol tarifleri dört ulaşım şeklinde döndürülebilir: arabayla, yaya, bisiklet ve toplu taşıma.
    • Uygulamanıza gezinme öğeleri ekleyin.
    • iOS 8'de, uygulama tamamlandıktan sonra comgooglemaps-x-callback:// aracılığıyla bir geri arama yapın. Geri çağırmalar genellikle bir kullanıcıyı ilk olarak iOS için Google Haritalar'ı açan uygulamaya döndürmek için kullanılır. iOS 9'da sistemin, durum çubuğunun sol köşesinde otomatik olarak bir "Geri" bağlantısı sağladığını unutmayın.
  • comgooglemapsurl:// - Bu şema, masaüstü Google Haritalar web sitesinden türetilen bir URL kullanarak iOS için Google Haritalar uygulamasını başlatmanızı sağlar. Bu, kullanıcılarınıza Google Haritalar web sitesini yüklemek yerine yerel bir mobil deneyim sunabileceğiniz anlamına gelir.

    • Orijinal URL, maps.google.com veya google.com/maps için ya da com yerine geçerli herhangi bir üst düzey ülke alanı kullanıyor olabilir. Ayrıca, goo.gl/maps yönlendirme URL'sini de iletebilirsiniz.
    • comgooglemapsurl:// URL şemasıyla x-source ve x-success parametrelerini kullanarak geri çağırma oluşturabilirsiniz.

iOS için Google Haritalar uygulamasını kullanıma sunma ve belirli bir işlevi yerine getirme

iOS için Google Haritalar uygulamasını başlatmak ve isteğe bağlı olarak desteklenen işlevlerden birini yapmak üzere aşağıdaki formun URL şemasını kullanın:

comgooglemaps://?parameters

veya:

comgooglemaps-x-callback://?parameters

Parametreler bu dokümanın ilerleyen kısımlarında ayrıntılı olarak açıklanmıştır.

Cihazdaki Google Haritalar uygulamasının kullanılabilirliği kontrol ediliyor

Bu URL'lerden birini uygulamanızdaki bir kullanıcıya sunmadan önce, uygulamanın yüklendiğini doğrulamanız gerekir. Uygulamanız aşağıdaki kodla URL şemasının kullanılabilir olup olmadığını kontrol edebilir:

Swift

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

Objective-C

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

Örneğin, New York'taki Central Park 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üleme

Haritayı belirli 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 üst kısmına başka görünümler yerleştirebilir 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üntü alanı orta noktasıdır. Virgülle ayrılmış latitude,longitude biçimi olarak biçimlendirilir.
  • mapmode: Gösterilen harita türünü ayarlar. Şu şekilde ayarlanabilir: standard veya streetview. Belirtilmezse mevcut uygulama ayarları kullanılır.
  • views: Belirli görünümleri açar/kapatır. Şu değerlere ayarlanabilir: satellite, traffic veya transit. Bir ayırıcı kullanarak birden çok değer belirlenebilir. Parametre değer belirtilmediyse tüm görünümleri temizler.
  • zoom: Haritanın yakınlaştırma düzeyini belirtir.

Bu örnek URL'de, New York'ta ortalanan 14 no'lu haritada, trafik görünümü açık şekilde gösterilmektedir:

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

New York trafik haritası

Bazı ek örnekler şunlardır:

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

Arama sorgularını belirli 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 destekler.

  • q: Aramanızın sorgu dizesi.

Belirtilen konumun etrafında "Pizza" araması yapan bu örnek URL:

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

Yakındaki Pizza

Bazı ek örnekler şunlardır:

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

Yol tarifi gösteriliyor

İki konum arasındaki yol tariflerini istemek ve görüntülemek için bu şemayı kullanın. Ulaşım modunu da belirtebilirsiniz.

Parametreler

  • saddr: Yol tarifi aramaları için başlangıç noktasını ayarlar. Bu bir enlem,boylam veya sorgu biçimlendirilmiş 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 geçerli konumu kullanılır.
  • daddr: Yol tarifi aramalarının bitiş noktasını ayarlar. saddr ile aynı biçime ve davranışa sahiptir.
  • directionsmode: Ulaşım yöntemi. Şu şekilde ayarlanabilir: driving, transit, bicycling veya walking.

Örnek URL'de, Google NYC ile JFK Havalimanı arasındaki toplu taşıma yol tarifleri verilmiştir:

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

Toplu taşımayla yol tarifi

Bazı ek örnekler şunlardır:

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

Geri çağırma URL'si belirtme

Geri çağırma URL'si belirtmek istiyorsanız comgooglemaps-x-callback:// URL şemasını kullanmanız gerekir. Bu şema x-callback-url spesifikasyonuna uygundur. Bu şemayı kullanarak iOS için Google Haritalar uygulamasını ç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 bir URL'ye geri arama yapılır.

comgooglemaps-x-callback:// istekleri aşağıdaki formda olmalıdır:

comgooglemaps-x-callback://?parameters

Parametreler

x geri çağırma URL şeması, aşağıdaki ek parametrelerle comgooglemaps:// URL şemasıyla aynı parametreleri kabul eder. Her iki parametre de zorunludur.

  • 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 bir URL düzeni olur. Böylece kullanıcılar orijinal uygulamaya geri dönebilir.

Uygulamanızın, geri çağırma URL'sine yanıt verebilmesi için kendi URL şemasını kaydetmesi gerektiğini unutmayın.

  1. Uygulamanızın, geri çağırma isteğine yanıt verebilen bir URL şeması kaydettiğinden emin olun.
  2. x-source parametresindeki geri çağırma düğmesinin etiketini iletin.
  3. x-success parametresinde 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österir. Uygulamada "SourceApp" etiketli bir düğme de görüntülenir. "SourceApp" düğmesi tıklandığında, iOS için Google Haritalar uygulaması kurgusal bir URL şemasına (sourceapp://?resume=true) geri çağırma işlemi gerçekleştirecektir.

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 mevcut olduğunu ve x-callback 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ı için arama yaptıktan sonra uygulamaya geri dönmesine olanak tanıyan bir URL örneğidir.

comgooglemaps-x-callback://?q=dessert&center=37.759748,-122.427135
   &x-success=sourceapp://?resume=true
   &x-source=Nom+Nom

Uygulamanıza navigasyon ekleme

Bir yol tarifi isteğiyle iOS için Google Haritalar uygulamasını başlatmak, kullanıcılarınıza uygulamanızdan adım adım navigasyon olanağı vermenin 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 ardından kullanıcınız hazır olduğunda uygulamanıza nasıl döneceğinizi gösterir. Kod aşağıdakileri yapar:

  1. comgooglemaps-x-callback:// URL şemasının kullanılabilir olduğunu doğrulayın.
  2. iOS için Google Haritalar uygulamasını başlatın ve New York'taki JFK Havaalanı'na yol tarifi isteyin. Kullanıcının mevcut konumundan yol tarifi istemek için başlangıç adresini boş bırakın.
  3. iOS için Google Haritalar uygulamasına "AirApp" etiketli bir düğme ekleyin. Düğme etiketi, x-source parametresiyle tanımlanır.
  4. Kullanıcılar geri düğmesini tıkladığında sourceapp:// kurgusal URL şemasını ç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.");
}

iOS için Google Haritalar uygulaması Google Haritalar masaüstü URL'sinden kullanıma sunuluyor

Uygulamanız, mevcut bir Google Haritalar URL'sine (ör. web sayfası veya veritabanında) erişebiliyorsa bu şemayı, URL'yi iOS için Google Haritalar uygulamasında açarak kullanıcılarınıza en iyi yerel deneyimi sunabilirsiniz.

  1. http:// veya https:// şemasını comgooglemapsurl:// ile değiştirin.
  2. Bir geri çağırma kullanmak istiyorsanız x-source ve x-success parametrelerini ekleyin. Bu şema, x-callback-url spesifikasyonuna uygundur.

Desteklenen Google Haritalar URL biçimleri

comgooglemapsurl:// şeması, bu normal ifadeyle eşleşen URL'leri destekler. Bu URL, {TLD} herhangi bir geçerli üst düzey ülke alanını belirtir. Netlik sağlamak için satır sonları eklendi:

(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 mevcut olduğ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 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 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 çağrısı 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, orijinal Google Haritalar URL'sinde (yukarıda açıklanmıştır) belirtildiği gibi, iOS için Google Haritalar uygulamasını başlatır ve Tokyo Kulesi'ne yol tarifi içeren bir harita görüntüler. Uygulamada ayrıca "SourceApp" etiketli bir düğme de görüntülenir. "SourceApp" düğmesi tıklandığında, iOS için Google Haritalar uygulaması kurgusal bir URL şemasına (sourceapp://?resume=true) geri çağırma işlemi gerçekleştirecektir.

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