iOS 9 ve sonraki sürümleri çalıştıran cihazlarda, 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 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.
Geçiş Bağlantıları ve Google Haritalar
iOS için Google Haritalar, iOS 9 veya sonraki sürümleri çalıştıran cihazlarda Evrensel Bağlantılar'ı 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 kullanmak isteyebilirsiniz.
(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 web uygulamasından yerel iOS uygulamasını başlatmanıza olanak tanır. URL'de, başlatılan uygulamaya aktarılacak seçenekler 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ıza ve birkaç işlemden birini gerçekleştirmenize olanak tanır:- Bir haritayı belirtilen konum ve yakınlaştırma düzeyinde görüntüleyin.
- Konumları veya yerleri arayın ve harita üzerinde görüntüleyin.
- Bir konumdan diğerine yol tarifi isteyin. Dört ulaşım modu için yol tarifi döndürülebilir: araba, yürüyüş, bisiklet ve toplu taşıma.
- Uygulamanıza navigasyon ekleyin.
- iOS 8'de, uygulama tamamlandığında
comgooglemaps-x-callback://
kullanarak geri çağırma yapın. Geri çağırmalar genellikle bir 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ğladığı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ızı sağlar. Diğer bir deyişle, sadece Google Haritalar web sitesini yüklemek yerine kullanıcılarınıza yerel bir mobil deneyim sunabilirsiniz.- Orijinal URL,
maps.google.com
veyagoogle.com/maps
için olabilir ya dacom
yerine geçerli bir üst düzey ülke alan adını kullanabilir. Ayrıcagoo.gl/maps
yönlendirme URL'lerini de iletebilirsiniz. comgooglemapsurl://
URL şemasıylax-source
vex-success
parametrelerini kullanarak bir geri çağırma yayınlayabilirsiniz.
- 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 üzere aşağıdaki biçimde bir URL şeması 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.
Cihazda Google Haritalar uygulamasının kullanılabilirliğini kontrol etme
Uygulamanızda bu URL'lerden birini bir kullanıcıya sunmadan önce uygulamanın yüklü olduğunu 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://")!)
Objective-C
[[UIApplication sharedApplication] canOpenURL:
[NSURL URLWithString:@"comgooglemaps://"]];
Örneğin, New York'taki Central Park'ın 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. Haritanızın üzerine başka görünümler de yerleştirebilir veya Street View görüntülerini görüntüleyebilirsiniz.
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ının merkez noktasıdır. Virgülle ayrılmışlatitude,longitude
dizesi olarak biçimlendirilir.mapmode
: Gösterilen harita türünü ayarlar.standard
veyastreetview
olarak ayarlanabilir. Belirtilmezse geçerli uygulama ayarları kullanılır.views
: Belirli görünümleri açar/kapatır. Şu şekilde ayarlanabilir:satellite
,traffic
veyatransit
. Virgül ayırıcı kullanılarak birden fazla değer ayarlanabilir. Parametre herhangi bir değer olmadan belirtilirse tüm görünümleri temizler.zoom
: Haritanın yakınlaştırma düzeyini belirtir.
Bu örnek URL'de, harita New York merkezli, 14 zum düzeyiyle trafik görünümü açık şekilde görüntülenir:
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
Belirtilen görüntü alanı konumunda arama sorgularını görüntülemek için bu şemayı kullanın.
Parametreler
Bir haritayı görüntülemek için kullanılan parametrelere ek olarak, Arama, q
parametresini destekler.
q
: Aramanızın sorgu dizesi.
Belirtilen konumun yakınlarında "Pizza" araması yapmak için şu ö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ının başlangıç noktasını ayarlar. Bu bir enlem,boylam veya sorgu biçimlendirilmiş 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ı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
veyawalking
.
Örnek URL'de, Google NYC ile JFK Havaalanı arasında toplu taşıma yol tarifleri görüntülenir:
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 uygundur. iOS için Google Haritalar uygulamasını bu şemayla ç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
geri çağrılır.
comgooglemaps-x-callback://
için gönderilen istekler şu biçimde olmalıdır:
comgooglemaps-x-callback://?parameters
Parametreler
X geri çağırma URL'si şeması, comgooglemaps://
URL şemasıyla aynı parametreleri ve aşağıdaki ek parametreleri kabul eder. Her iki parametre de zorunludur.
x-source
— X-callback isteğini gönderen uygulamanın adı. Kısa adlar tercih edilir.x-success
: Tamamlandığında çağrılacak URL. Bu, genellikle kendi uygulamanız için kullanıcıların orijinal uygulamaya geri dönmelerini sağlayan bir URL şeması olur.
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 çağırma düğmesinin etiketini iletin.- Geri çağırma URL'sini
x-success
parametresine iletin.
Aşağıdaki örnekte iOS için Google Haritalar uygulaması başlatılacak ve New York merkezli bir harita görüntülenecektir. Ayrıca uygulama, "SourceApp" etiketli bir düğme de görüntüler.
"SourceApp" düğmesi tıklandığında, iOS için Google Haritalar uygulaması sourceapp://?resume=true
hayali URL şemasına bir geri çağırma işlemi 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 mevcut olduğunu 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ı için arama yaptıktan sonra bir uygulamaya dönmelerini 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 navigasyon özelliği ekleniyor
iOS için Google Haritalar uygulamasını yol tarifi isteği ile başlatmak, kullanıcılarınıza uygulamanızdan adım adım navigasyon erişimi 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 kullanıcı hazır olduğunda uygulamanıza nasıl döneceğinizi gösterir. Kod şunları yapar:
comgooglemaps-x-callback://
URL şemasının kullanılabilir olduğunu doğrulayın.- iOS için Google Haritalar uygulamasını başlatın ve New York'taki JFK Havaalanı 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
sourceapp://
hayali 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ını Google Haritalar masaüstü URL'sinden başlatma
Uygulamanız önceden mevcut olan bir Google Haritalar URL'sine (ör. bir web sayfası veya veritabanında) erişebiliyorsa bu şemayı kullanarak URL'yi iOS için Google Haritalar uygulamasında açabilir ve 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 uygundur.
Desteklenen Google Haritalar URL biçimleri
comgooglemapsurl://
şeması, bu normal ifadeyle eşleşen URL'leri destekler. Burada {TLD}
, geçerli herhangi bir üst düzey ülke alanını ifade eder. Netlik sağlamak adına satır aralıkları eklenmiştir:
(http(s?)://)?
((maps\.google\.{TLD}/)|
((www\.)?google\.{TLD}/maps/)|
(goo.gl/maps/))
.*
Google Haritalar uygulamasının kullanılabilirliğini kontrol etme
Ö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-callback ile Tokyo Kulesi için yol tarifi isteyen örnek:
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 örnekte, iOS için Google Haritalar uygulaması başlatılacak ve orijinal Google Haritalar URL'sinde (yukarıda) belirtildiği gibi, Tokyo Kulesi için yol tariflerinin bulunduğu bir harita görüntülenecektir. Uygulama ayrıca "SourceApp" etiketli bir düğme de görüntüler. "SourceApp" düğmesi tıklandığında, iOS için Google Haritalar uygulaması sourceapp://?resume=true
hayali URL şemasına bir geri çağırma işlemi 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