iOS için Yerler SDK'sına Yönelik Politikalar

Bu belgede, API'nin parçası olan Yer Otomatik Tamamlama hizmeti de dahil olmak üzere iOS için Yerler SDK'sı ile geliştirilen tüm uygulamalara özel gereksinimler listelenmektedir. Google Haritalar geliştiricileri için daha genel bilgiler Google Haritalar Platformu Hizmet Şartları'nda bulunabilir.

Kullanım şartları ve gizlilik politikası sağlanıyor

iOS için Rehber SDK'sı uygulaması geliştirirseniz, uygulamanızla birlikte Google ile yaptığınız Sözleşme'de belirtilen yönergelere uygun bir Kullanım Şartları ve bir Gizlilik Politikası sunmanız gerekir:

  • Kullanım Şartları ve Gizlilik Politikası herkesin erişimine açık olmalıdır.
  • Uygulamanızın Kullanım Şartları'nda, uygulamanızı kullandığınızda kullanıcıların Google'ın Hizmet Şartları'na tabi olduğunu açıkça belirtmelisiniz.
  • Gizlilik Politikanızda kullanıcılara Google Maps API'leri kullandığınızı bildirmeniz ve Google Gizlilik Politikası'nı referans olarak eklemeniz gerekir.

Kullanım Şartları ve Gizlilik Politikanızı kullanıma sunmanız için önerilen yer, uygulamanızın platformuna bağlıdır.

Mobil uygulamalar

Mobil uygulama geliştiriyorsanız, ilgili uygulama mağazasında ve bir uygulama ayarları menüsünde uygulamanızın indirme sayfasında Kullanım Şartları ve Gizlilik Politikası'nın bağlantısını sağlamanız önerilir.

Web uygulamaları

Web uygulaması geliştiriyorsanız web sitenizin alt bilgisine Kullanım Şartları ve Gizlilik Politikası bağlantısını eklemeniz önerilir.

İçeriği önceden getirme, önbelleğe alma veya depolama

iOS için Yerler SDK'sını kullanan uygulamalar, Google ile yaptığınız Sözleşme'nin şartlarına tabidir. Sözleşmenizin şartlarına tabi olmak üzere, şartlarda belirtilen sınırlı koşullar dışında hiçbir İçeriği önceden getirmemeli, dizine eklememeli, depolamamalı veya önbelleğe almamalısınız.

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. Yer kimliği, iOS yanıtları için Yerler SDK'sındaki "place_id" alanında döndürülür. Yer kimliklerini nasıl kaydedeceğinizi, yenileyeceğinizi ve yöneteceğinizi öğrenmek için Yer Kimlikleri rehberini inceleyin.

iOS sonuçları için Yerler SDK'sını görüntüleme

iOS için Yerler SDK'sını bir Google Haritası'nda veya harita olmadan görüntüleyebilirsiniz. iOS için Yerler SDK'sını bir haritada görüntülemek isterseniz bu sonuçlar bir Google Haritası'nda görüntülenmelidir. iOS için Yerler SDK'sının Google haritası olmayan bir haritada kullanılması yasaktır.

Uygulamanız, verileri bir Google Haritası üzerinde görüntülüyorsa Google logosu eklenir ve değiştirilemez. Google verilerini bir Google Haritası ile aynı ekranda görüntüleyen uygulamaların Google'a daha fazla atıfta bulunmaları gerekmez.

Uygulamanız, Google Haritası da göstermeyen bir sayfa veya görünümde veri görüntülüyorsa bu verileri içeren bir Google logosu göstermeniz gerekir. Örneğin, uygulamanız bir sekmede Google verilerini, bu verileri içeren bir Google Haritasını başka bir sekmede görüntülüyorsa ilk sekmede Google logosu gösterilmelidir. Uygulamanız otomatik tamamlama özelliği olan veya olmayan arama alanları kullanıyorsa logo satır içi olarak görüntülenmelidir.

Google logosu, haritanın sol alt köşesine yerleştirilmeli ve atıf bilgileri sağ alt köşeye yerleştirilmelidir. Her ikisi de haritada bütün olarak sunulmalı ve haritanın veya uygulamadaki başka bir yerin altında olmamalıdır. Aşağıdaki harita örneğinde, haritanın sol alt köşesinde Google logosu, sağ alt köşesinde atıf gösterilmektedir.

politika ilişkilendirme yerleşimi

Aşağıdaki zip dosyası; masaüstü, Android ve iOS uygulamaları için doğru boyutlardaki Google logosunu içerir. Bu logoları hiçbir şekilde yeniden boyutlandıramaz veya değiştiremezsiniz.

İndir: google_logo.zip

Atıfı değiştirmeyin. İlişkilendirme bilgilerini kaldırmayın, gizlemeyin veya kırpmayın. Google logolarını satır içinde kullanamazsınız (örneğin, "Bu haritalar [Google_logo] şirketindendir").

Atıfı yakın tutun. Doğrudan yerleştirilmiş öğeler dışında Google görüntülerinin ekran görüntülerini kullanıyorsanız standart atıfı resimde göründüğü gibi ekleyin. Gerekirse metin içeriğe yakın bir mesafede olduğu ve ortalama bir izleyici ya da okuyucu tarafından okunabileceği sürece atıf metninin stilini ve yerleşimini özelleştirebilirsiniz. Atıfı içerikten uzağa (örneğin, kitabınızın sonuna, dosyalarınızın veya programınızın jeneriklerine ya da web sitenizin altbilgi bölümüne) taşıyamazsınız.

Üçüncü taraf veri sağlayıcılarını dahil edin. Eşleme ürünlerimizdeki bazı veri ve resimler Google dışındaki sağlayıcılardan gelir. Bu tür görüntüler kullanıyorsanız atıf metninde "Google" adı ve ilgili veri sağlayıcılar(ör. "Harita verileri: Google, Maxar Technologies") belirtilmelidir. Görüntülerle birlikte bahsedilen üçüncü taraf veri sağlayıcılar olduğunda, yalnızca "Google"ı veya Google logosunu eklemek uygun bir atıf değildir.

Google Haritalar Platformu'nu ilişkilendirme görüntülemenin pratik olmadığı bir cihazda kullanıyorsanız kullanım alanınıza uygun lisanslar hakkında görüşmek için lütfen Google satış ekibiyle iletişime geçin.

Diğer ilişkilendirme gereksinimleri

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

API'nin döndürdüğü üçüncü taraf ilişkilendirmeleri, Google ilişkilendirmesini içermez. Google logosunu ve atıfları görüntüleme bölümünde açıklandığı gibi, bu ilişkilendirmeyi kendiniz eklemeniz gerekir.

Tek bir yer veya bir yer koleksiyonu ile ilgili üçüncü taraf ilişkilendirmelerini almak için aşağıdaki talimatları uygulayın.

Tek bir yere ait atıfları alma

Bir yeri kimlik bilgileriyle alarak bir yer aldığınızda, söz konusu yere ait ilişkilendirmeleri GMSPlace üzerindeki attributions mülkünden alabilirsiniz.

attributions, bir NSAttributedString nesnesi olarak sağlanır.

Bir dizi yerle ilgili atıfları alma

Uygulamanız cihazın mevcut yerinin belirlenmesi için elde edilen bilgileri görüntülüyorsa görüntülenen yer ayrıntıları için üçüncü taraf ilişkilendirmeleri gösterilmelidir. İstekte alınan tüm yerlere ait atıfları GMSPlaceLikelihoodList adresindeki attributions mülkünden alabilirsiniz.

attributions, yukarıda açıklandığı gibi tek bir yerden attributions ile aynı şekilde erişip görüntüleyebileceğiniz bir NSAttributedString nesnesi olarak sağlanır.

Bir fotoğrafla ilgili atıfları gösterme

Uygulamanızda fotoğraflar gösteriliyorsa bunları içeren her fotoğraf için attributions ve authorAttributions değerlerini 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österme

Bir GMSPlace nesnesi, en fazla beş yorum içerebilir. Her yorum bir GMSPlaceReview nesnesiyle temsil edilir. İsterseniz bu yorumları uygulamanızda görüntüleyebilirsiniz.

Google kullanıcılarının katkıda bulunduğu yorumları görüntülerken yazarın adını yakın bir yere koymanız gerekir. GMSPlaceReview nesnesinin yazar ilişkilendirmesi alanında mevcut olduğunda, yazarın fotoğrafını ve profilinin bağlantısını da eklemenizi öneririz. Aşağıdaki resimde bir parkla ilgili inceleme örneği gösterilmektedir:

Yazar ilişkilendirmesi ekranı

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.

  }
}];

Görüntülü reklam üçüncü taraf ilişkilendirmeleri

Üçüncü taraf sağlayıcılara yapılan ilişkilendirmeler, saklamanız ve kullanıcıya görüntülemeniz gereken içerik ve bağlantıları içeren NSAttributedString nesneleri olarak sağlanır.

İlişkilendirmelerdeki bağlantıların çalışması gerektiğinden, ilişkilendirmeleri görüntülemek için önerilen yol UITextView kullanmaktır. Bağlantıların çalıştığından emin olmak için UITextView üzerinde bir yetki verilmiş kullanıcı ayarlayın ve UITextViewDelegate cihazınızın shouldInteractWithURL yöntemini, YES değerini döndürecek şekilde ayarlayı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şkilendirmesi örneği

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

Örnek Şirket tarafından sağlanan girişler

Yukarıdaki örnekte, Örnek Şirket metin aralığı bir NSLink özelliği kapsamındadır.

Google ilişkilendirmesi için stil kuralları

İndirilebilir Google logosunu kullanamıyorsanız CSS ve HTML'de Google ilişkilendirmelerine yönelik stil yönergelerini aşağıda bulabilirsiniz.

Boş alan

Tam logonun etrafındaki boş alanın miktarı, Google'daki "G" harfinin yüksekliğine eşit veya bundan daha büyük olmalıdır.

Atıf kopyası ile Google logosu arasındaki alan, "G" harfinin genişliğinin yarısı kadar olmalıdır.

Okunabilirlik

Künye satırı her zaman net ve okunabilir olmalı, belirli bir arka plan için doğru renk değişiminde görünmelidir. Seçtiğiniz logo varyasyonu için her zaman yeterli kontrast sağladığınızdan emin olun.

Renk

%0-%40 arasında maksimum siyah tonlama kullanan beyaz veya açık renkli arka plan üzerinde Google Material Gri 700 metin kullanın.

Google
#5F6368
RGB 95 99 104
HSL 213 5 39
HSB 213 9 41

Koyu arka planlarda ve fotoğraf ya da meşgul olmayan desenler üzerinde künye satırı ve atıf için beyaz metin kullanın.

Google
#FFFFFF
RGB 255 255 255
HSL 0 0 100
HSB 0 0 100

Yazı tipi

Roboto yazı tipini kullanın.

Örnek CSS

"Google" metnine uygulandığında aşağıdaki CSS, "Google"ı beyaz veya açık renkli bir arka plan üzerinde uygun yazı tipi, renk ve boşlukla oluşturur.

font-family: Roboto;
font-style: normal;
font-weight: 500;
font-size: 16px;
line-height: 16px;
padding: 16px;
letter-spacing: 0.0575em; /* 0.69px */
color: #5F6368;