iOS için Yerler SDK'sı ile ilgili politikalar ve ilişkilendirmeler

Bu belgede, Places SDK for iOS ile geliştirilen tüm uygulamalara özgü şartlar listelenmektedir. Bu API'nin bir parçası olan Yer Otomatik Tamamlama hizmeti de bu şartlara dahildir. Google Haritalar geliştiricileri için daha genel bilgilere Google Haritalar Platformu Hizmet Şartları'ndan ulaşabilirsiniz.

Politikalar

Bu bölümde, iOS için Yerler SDK'sı ile ilgili politikalar açıklanmaktadır. Politikalar, Hizmet'i doğru şekilde ve Google Haritalar Platformu'nun beklentileri doğrultusunda kullanmanıza yardımcı olmak için pratik uygulama yönergeleri ve şartları sağlar.

Önbelleğe alma kısıtlamalarıyla ilgili istisnalar

Bir yeri benzersiz şekilde tanımlamak için kullanılan yer kimliğinin, önbelleğe alma kısıtlamalarından muaf olduğunu unutmayın. Bu nedenle, yer kimliği değerlerini süresiz olarak saklayabilirsiniz. Yer kimliği, API yanıtlarındaki place_id alanında döndürülür. Yer kimliklerini nasıl kaydedeceğinizi, yenileyeceğinizi ve yöneteceğinizi Yer Kimlikleri Kılavuzu'ndan öğrenebilirsiniz.

Avrupa Ekonomik Alanı ülkeleri ve idari bölgeleri

Bu ürünün, Avrupa Ekonomik Alanı'nda (AEA) fatura adresi olan müşteriler için farklı Hizmet Şartları vardır ve farklı işlevler de sunabilir. Google Haritalar Platformu ile geliştirmeye başlamadan önce aşağıdaki AEA'ya özel şartları ve bilgileri inceleyin:

Fatura adresiniz AEA'da değilse aşağıdaki hizmet şartları sizin için geçerlidir:

Google Haritalar ilişkilendirme koşulları

Bu bölümde, uygulamalarınız aracılığıyla Google Haritalar ve İçerik'in gösterilmesiyle ilgili ilişkilendirme şartları ve yönergeleri verilmektedir.

İlişkilendirme örneği

Aşağıda, Places UI Kit için bir ilişkilendirme örneği verilmiştir.

Google dışı bir haritada Yerler kullanıcı arayüzü kiti
ilişkilendirme örneği
Yer Ayrıntıları kompakt bileşenine zorunlu ilişkilendirme uygulandı. Bu Google dışı haritada, Google Haritalar ilişkilendirmesi net bir şekilde görünür ve Google Haritalar Platformu içeriği, diğer içeriklerden görsel olarak ayırt edilir.

Google Haritalar ilişkilendirmesini görüntüleme

Uygulamanızda veya web sitenizde Google Haritalar Platformu API'lerinden alınan İçerik'i gösterirken Google Haritalar ilişkilendirme şartlarına uymanız gerekir. İçerik, ilişkilendirmenin zaten görünür olduğu bir Google Haritası'nda gösteriliyorsa ek ilişkilendirme eklemeniz gerekmez.

Google Haritalar ilişkilendirmesi dahil

Kullanıcı arayüzünde (ör. Places UI Kit'te) Google Haritalar Platformu tarafından sağlanan Google Haritalar ilişkilendirmesi için:

  • Dahil edilen ilişkilendirmeyi, nerede gösterildiğine bakılmaksızın kaldırmayın. İlişkilendirmeyi değiştirmeyin, gizlemeyin veya kapatmayın ve arka planda net bir şekilde göründüğünden emin olun.
  • Google Haritalar Platformu İçeriği'ni her zaman kenarlık, arka plan rengi, gölge veya yeterli boşluk gibi kullanıcı arayüzü işaretlerini kullanarak diğer içeriklerden görsel olarak ayırt edin.
  • Görsel değişiklik yaparken tüm Google Haritalar ilişkilendirme şartlarına uymanız gerekir.

Mümkün olduğunda Google Haritalar logosu kullanılmalıdır. Alan sınırlı olduğunda Google Haritalar metni kabul edilebilir. Son kullanıcılar, hangi içeriğin Google Haritalar tarafından sağlandığını her zaman net bir şekilde anlayabilmelidir.

Sol: Google Haritalar logo atfı, Sağ: Google Haritalar metin atfı
Sol: Google Haritalar logo atfı, Sağ: Google Haritalar metin atfı

Logo ilişkilendirmesi

Uygulamanızda veya web sitenizde Google Haritalar logosunu kullanmak için aşağıdaki şartlara uyun.
Google Haritalar logosu ilişkilendirmesi için kabul edilebilir varyasyonlar
Google Haritalar logosu ilişkilendirmesi için kabul edilebilir varyasyonlar

Google Haritalar logolarını indirme

Resmi Google Haritalar logosu dosyalarını kullanın. Aşağıdaki logoları indirin ve bu bölümdeki yönergeleri uygulayın.

Google Haritalar ilişkilendirme öğelerini indirin

Google Haritalar logosunu kullanırken aşağıdaki yönergelere uyun.

  • Logoyu hiçbir şekilde değiştirmeyin.
  • Bozulmayı önlemek için logonun en boy oranını koruyun.
  • Harita veya resim gibi yoğun bir arka planda ana hatlı logoyu kullanın.
  • Düz renkli veya hafif gradyan gibi sade bir arka planda ana hatları olmayan logoyu kullanın.

Logo boyutu özelliği

Google Haritalar logosu için aşağıdaki boyut özelliklerini kullanın:
  • Minimum logo yüksekliği: 16 dp
  • Maksimum logo yüksekliği: 19 dp
  • Minimum logo boşluğu: Sol, sağ ve üstte 10 dp, altta 5 dp

dp hakkında bilgi edinmek için Materyal Tasarım web sitesindeki Piksel yoğunluğu başlıklı makaleyi inceleyin.

Minimum boş alanı ve kabul edilebilir boyut aralığını gösteren Google Haritalar logosu
Minimum boş alanı ve kabul edilebilir boyut aralığını gösteren Google Haritalar logosu

Logo erişilebilirliği

Google Haritalar logosu için aşağıdaki erişilebilirlik şartlarına uyun:
  • Logo ve arka plan arasında erişilebilir bir kontrast sağlayın.
  • Google Haritalar metnini içeren bir erişilebilirlik etiketi ekleyin.
Google Haritalar logosu ilişkilendirmesi için kabul edilemez varyasyonlar ve erişilebilirlik sorunları
Google Haritalar logosu ilişkilendirmesiyle ilgili kabul edilemez varyasyonlar ve erişilebilirlik sorunları

Metin ilişkilendirmesi

Arayüzünüzün boyutu Google Haritalar logosunun kullanılmasını desteklemiyorsa metinde Google Haritalar yazabilirsiniz. Bunun için aşağıdaki yönergeleri izleyin:

Google Haritalar metin atfının kabul edilebilir varyasyonları
Google Haritalar metin ilişkilendirmesinin kabul edilebilir varyasyonları
  • Google Haritalar metnini hiçbir şekilde değiştirmeyin:
    • Google Haritalar'ın büyük/küçük harf kullanımını değiştirmeyin.
    • Google Haritalar'ı birden fazla satıra sarmayın.
    • Google Haritalar'ı başka bir dile yerelleştirmeyin.
    • translate="no" HTML özelliğini kullanarak tarayıcıların Google Haritalar'ı çevirmesini engelleyin.
Google Haritalar metin ilişkilendirmesinin kabul edilemez varyasyonları
Google Haritalar metin ilişkilendirmesinin kabul edilemez varyasyonları
  • Google Haritalar metnini aşağıdaki tabloda açıklandığı şekilde stilize edin:

    Google Haritalar metin stili koşulları
    Özellik Stil
    Yazı tipi ailesi Roboto Yazı tipini yüklemek isteğe bağlıdır.
    Yedek yazı tipi ailesi Ürününüzde zaten kullanılan herhangi bir sans serif gövde yazı tipi veya varsayılan sistem yazı tipini çağırmak için "Sans-Serif"
    Yazı tipi stili Normal
    Yazı tipi kalınlığı 400
    Yazı tipi rengi Beyaz, siyah (#1F1F1F) veya gri (#5E5E5E). Arka planla erişilebilir (4.5:1) kontrastı koruyun.
    Yazı tipi boyutu Minimum yazı tipi boyutu: 12 sp
    Maksimum yazı tipi boyutu: 16 sp
    sp hakkında bilgi edinmek için Material Design web sitesindeki Yazı tipi boyutu birimleri başlıklı makaleyi inceleyin.
    Harf aralıkları Normal

Örnek CSS

Aşağıdaki CSS, Google Haritalar'ı beyaz veya açık renkli bir arka planda uygun tipografik stil ve renkle oluşturur.

@import url('https://fonts.googleapis.com/css2?family=Roboto&display=swap');

.GMP-attribution {
font-family: Roboto, Sans-Serif;
font-style: normal;
font-weight: 400;
font-size: 1rem;
letter-spacing: normal;
white-space: nowrap;
color: #5e5e5e;
}

Görsel şartları

Google Haritalar ilişkilendirmesinin görsel işlenmesi için aşağıdaki koşulları karşılayın.
  • Konum ilişkilendirmesini içeriğin üst veya alt kısmına yakın ve aynı görsel kapsayıcı içinde yerleştirin. Tek bir içerik satırında, ilişkilendirme sağa veya sola yerleştirilebilir.

  • Google Haritalar Platformu İçeriği'ni kenarlık, arka plan rengi, gölge veya yeterli boşluk gibi kullanıcı arayüzü işaretlerini kullanarak diğer içeriklerden görsel olarak ayırt edin.

  • Google Haritalar'ı Google Haritalar Platformu dışındaki içeriklerle ilişkilendirerek yanlış tanıtmayın.
  • İlişkilendirmenin her zaman görünür ve okunabilir olduğunu doğrulayın. Asla kaldırmayın, gizlemeyin, karartmayın veya değiştirmeyin.

Aşağıdaki resimlerde bu görsel koşullara ilişkin örnekler gösterilmektedir.

Google Haritalar ilişkilendirmesinin içeriğin üstünde, altında ve yanında konumlandırılması örneği
Google Haritalar atfının içeriğin üstünde, altında ve yanında konumlandırılmasına ilişkin örnek

Google Haritalar içeriğini (yer derecelendirmesi) diğer içeriklerden ayırt etmeye yönelik üç yaklaşıma ilişkin örnek
Google Haritalar İçeriği'ni (yer derecelendirmesi) diğer içeriklerden ayırmaya yönelik üç yaklaşıma ilişkin örnek

Google Haritalar ilişkilendirmesini gizlemeyin veya diğer kaynaklardaki içeriklerle karıştırmayın.
Google Haritalar atfını kapatmayın veya diğer kaynaklardaki içeriklerle karıştırmayın

Üçüncü taraf veri sağlayıcıları

Harita ürünlerimizdeki bazı veriler ve resimler Google dışındaki sağlayıcılardan alınır. Harita Döşemeleri API'si gibi bazı ürünler için üçüncü taraf veri sağlayıcıya gerekli atıfı sağlayabiliriz. Bu durumda, ilişkilendirmenizin metninde "Google Haritalar" adı ve ilgili veri sağlayıcılar(ör. "Harita verileri: Google, Maxar Technologies") yer almalıdır. Google üçüncü taraf ilişkilendirmesi sağladığında yalnızca "Google Haritalar"ı veya Google logosunu eklemek uygun ilişkilendirme değildir.

Diğer ilişkilendirme koşulları

Üçüncü taraf sağlayıcılarla ilgili ilişkilendirmeler, kullanıcılara sağlandığı biçimde göstermeniz gereken içerik ve bağlantılar içerir. Google, uygulamanızın bu bilgileri yer ayrıntılarının altında göstermesini önerir.

API tarafından döndürülen üçüncü taraf ilişkilendirmeleri, Google ilişkilendirmesini içermez. Google logosunu ve atıflarını gösterme başlıklı makalede açıklandığı gibi bu atfı kendiniz eklemeniz gerekir.

Tek bir yer veya bir yer koleksiyonu için üçüncü taraf ilişkilendirmelerini almak üzere bu talimatları uygulayın.

Tek bir yer için ilişkilendirmeleri alma

Bir yeri kimliğe göre alarak aldığınızda, bu yerin ilişkilendirmelerini GMSPlace üzerindeki attributions özelliğinden alabilirsiniz.

attributions, NSAttributedString nesnesi olarak sağlanır.

Bir yer koleksiyonu için ilişkilendirmeleri alma

Uygulamanız, cihazın mevcut yerini isteyerek elde edilen bilgileri gösteriyorsa gösterilen yer ayrıntıları için üçüncü taraf ilişkilendirmelerini göstermesi gerekir. İstekle alınan tüm yerlerin ilişkilendirmelerini GMSPlaceLikelihoodList üzerindeki attributions özelliğinden alabilirsiniz.

attributions, NSAttributedString nesnesi olarak sağlanır. Bu nesneye, yukarıda açıklandığı gibi tek bir yerdeki attributions ile aynı şekilde erişebilir ve görüntüleyebilirsiniz.

Arama sonucu ilişkilendirmeleri

Avrupa'da Google'ın değiştirilmemiş sıralaması kullanılırken arama ürünlerinde, arama sonuçlarının sıralamasını belirleyen ana faktörleri ve ana faktörlerin ağırlığını açıklayan, en fazla 1 tıklama uzaklığında açıklayıcı metin bulunmalıdır. Açıklayıcı metin:

Başlık: Bu sonuçlar hakkında

Gövde: Bir konumun yakınındaki işletmeleri veya yerleri aradığınızda Google Haritalar'da yerel sonuçlar gösterilir. Aramanızla ilgili en iyi sonuçları elde etmenize yardımcı olmak için öncelikli olarak alaka düzeyi, mesafe ve belirginlik gibi çeşitli faktörler birleştirilir.

1. Düğme: Daha fazla bilgi
"Daha fazla bilgi" metni bir Yardım Merkezi makalesine bağlanmalıdır.

Button 2: Tamam

Fotoğraflar için atıfları görüntüleme

Uygulamanızda fotoğraf gösteriliyorsa bu fotoğrafların her birinde bulunan attributions ve authorAttributions öğelerini göstermeniz gerekir.

Swift

GMSPlacesClient.sharedClient().lookUpPhotosForPlaceID(placeID) { (photos, error) -> Void in
  if let error = error {
    // TODO: handle the error.
    print("Error: \(error.description)")
  } else {
    // Get attribution for the first photo in the list.
    if let photo = photos?.results.first {
      let attributions = photo.attributions
    }
  }
}
    

Objective-C

[[GMSPlacesClient sharedClient]
    lookUpPhotosForPlaceID:placeID
      callback:^(GMSPlacePhotoMetadataList *_Nullable photos,
                  NSError *_Nullable error) {
        if (error) {
          // TODO: handle the error.
          NSLog(@"Error: %@", [error description]);
        } else {
          // Get attribution for the first photo in the list.
          if (photos.results.count > 0) {
            GMSPlacePhotoMetadata *photo = photos.results.firstObject;
            NSAttributedString *attributions = photo.attributions;
          }
        }
      }];
    

Yorum görüntüleme

Bir GMSPlace nesnesi en fazla beş yorum içerebilir. Her yorum bir GMSPlaceReview nesnesiyle temsil edilir. İsteğe bağlı olarak bu yorumları uygulamanızda gösterebilirsiniz.

Google kullanıcıları tarafından gönderilen yorumları gösterirken yazarın adını yakınına yerleştirmeniz gerekir. GMSPlaceReview nesnesinin yazar ilişkilendirme alanında varsa yazarın fotoğrafını ve profilinin bağlantısını da eklemenizi öneririz. Aşağıdaki resimde bir parkla ilgili yorum örneği gösterilmektedir:

Yazar atfı gösterimi

Google, yorumların son kullanıcıya nasıl sıralandığını göstermenizi de önerir.

Yorumlara erişmek için:

Swift

// Define a Place ID.
let placeID = "ChIJV4k8_9UodTERU5KXbkYpSYs"

// Specify the place data types to return.
let myProperties: [GMSPlaceProperty] = [.name, .website, .reviews]

// Create the GMSFetchPlaceRequest object.
let fetchPlaceRequest = GMSFetchPlaceRequest(placeID: placeID, placeProperties: myProperties)

client.fetchPlaceWithRequest(fetchPlaceRequest: fetchPlaceRequest, callback: {
  (place: GMSPlace?, error: Error?) in
  if let error = error {
    print("An error occurred: \(error.localizedDescription)")
    return
  }
  if let place = place {
    let firstReview: GMSPlaceReview = place.reviews![0]

    // Use firstReview to access review text, authorAttribution, and other fields.

  }
})

Objective-C

// Define a Place ID.
NSString *placeID = @"ChIJV4k8_9UodTERU5KXbkYpSYs";

// Specify the place data types to return, including reviews.
NSArray<GMSPlaceProperty *> *myProperties = @[GMSPlacePropertyName, GMSPlacePropertyWebsite,GMSPlacePropertyReviews];

GMSFetchPlaceRequest *fetchPlaceRequest = [[GMSFetchPlaceRequest alloc] initWithPlaceID:placeID placeProperties: myProperties];

[placesClient fetchPlaceWithRequest: fetchPlaceRequest, callback: ^(GMSPlace *_Nullable place, NSError *_Nullable error) {
  if (error) {
    // TODO: handle the error.
    NSLog(@"Error: %@", [error description]);
  } else {
    // Get first review.
    GMSPlaceReview *firstReview = [place reviews][0];

    // Use firstReview to access review text, authorAttribution, and other fields.

  }
}];

Üçüncü taraf ilişkilendirmelerini görüntüleme

Üçüncü taraf sağlayıcılarla ilgili ilişkilendirmeler, NSAttributedString nesneleri olarak sağlanır. Bu nesneler, korumanız ve kullanıcıya göstermeniz gereken içerik ve bağlantılar içerir.

İlişkilendirmeleri görüntülemenin önerilen yolu UITextView kullanmaktır. Bunun nedeni, ilişkilendirmelerdeki bağlantıların çalışması gerektiğidir. Bağlantıların çalışmasını sağlamak için UITextView üzerinde bir temsilci ayarlayın ve shouldInteractWithURL yöntemini UITextViewDelegate olarak ayarlayın. YES döndürün.

Swift

...
  self.attributionTextView.delegate = self
...

// MARK: - UITextViewDelegate

func textView(textView: UITextView, shouldInteractWithURL URL: NSURL,
  inRange characterRange: NSRange) -> Bool {
  // Make links clickable.
  return true
}
    

Objective-C

...
  self.attributionTextView.delegate = self;
...

#pragma mark - UITextViewDelegate

- (BOOL)textView:(UITextView *)textView
    shouldInteractWithURL:(NSURL *)url
                  inRange:(NSRange)characterRange {
  // Make links clickable.
  return YES;
}
    

Üçüncü taraf ilişkilendirme örneği

Üçüncü taraf ilişkilendirmesi genellikle bağlantı içeren metinden oluşur. Örneğin:

Örnek Şirket'in listelediği ürünler

Yukarıdaki örnekte, Örnek Şirket metin aralığı bir NSLink özelliğiyle kapsanmaktadır.

Son kullanıcı adresleri için otomatik tamamlama

Bir son kullanıcı, Müşteri Uygulamanızda Otomatik Tamamlama işlevini kullanarak bir sokak adresi yazdığında ve bu sokak adresi, Otomatik Tamamlama olmadan son kullanıcı tarafından tamamen ve doğru bir şekilde sağlanmış olsaydı, son kullanıcının seçtiği adres, Google Haritalar Platformu Sözleşmenizdeki Google Haritalar İçeriği kısıtlamalarına tabi olmazdı. Bu istisna yalnızca son kullanıcı tarafından seçilen cadde adresi ve yalnızca söz konusu son kullanıcının belirli işlemi için geçerlidir. Otomatik tamamlama işlevi tarafından sağlanan önerilen adresler listesi veya diğer Google Haritalar İçerikleri için geçerli değildir. Bu istisna, diğer Google Haritalar Platformu Hizmetleri tarafından sunulan herhangi bir ÖY veya adres arama işlevi için geçerli değildir.

Son kullanıcı adresini otomatik tamamlama

Önceki resimde, soldaki adres listesi hâlâ Google Haritalar İçeriği ile ilgili kısıtlamalara tabidir. Son kullanıcı, seçtiği adresi belirledikten sonra bu adres, yalnızca söz konusu son kullanıcının geçerli işlemi amacıyla Google Haritalar İçerikleri ile ilgili kısıtlamalara tabi olmaz.