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

Bu konu, API'nin bir parçası olan Yer Otomatik Tamamlama hizmeti dahil olmak üzere Android için Places SDK'sı ile geliştirilen tüm uygulamalar için ilişkilendirme koşullarını sağlar. Diğer Google Haritalar Platformu şartları için Google Haritalar Platformu Hizmet Şartları'na bakın.

Kullanım şartları ve gizlilik politikası sağlama

Android için Yerler SDK'sı uygulaması geliştirirseniz uygulamanızla birlikte Google ile sözleşmenizde belirtilen yönergelere uygun bir Kullanım Şartları ve Gizlilik Politikası sunmanız gerekir:

  • Kullanım Şartları ve Gizlilik Politikası herkese açık olmalıdır.
  • Uygulamanızın Kullanım Şartları'nda, kullanıcıların uygulamanızı kullanarak Google'ın Hizmet Şartları'na tabi olacağını açıkça belirtmeniz gerekir.
  • Gizlilik Politikanızda, Google Haritalar API'lerini kullandığınızı kullanıcılara bildirmeniz ve Google Gizlilik Politikası'nı referans olarak eklemeniz gerekir.

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

Mobil uygulamalar

Mobil uygulama geliştiriyorsanız uygulamanızın ilgili uygulama mağazasındaki indirme sayfasında ve uygulama ayarlarında Kullanım Şartları ile Gizlilik Politikası bağlantılarını sağlamanız önerilir.

Web uygulamaları

Web uygulaması geliştiriyorsanız web sitenizin altbilgisinde Kullanım Şartları ve Gizlilik Politikası bağlantısı sağlamanız önerilir.

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

Android için Yerler SDK'sını kullanan uygulamalar, Google ile sözleşmenizin şartlarına tabidir. Sözleşmenizin şartlarına tabi olarak, şartlarda belirtilen sınırlı koşullar dışında hiçbir İçeriği önceden getirmemeli, dizine eklememeli, saklamamalı 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, Android için Yerler SDK'sı yanıtlarında place_id alanında döndürülür. Yer kimlikleri kılavuzundan yer kimliklerini nasıl kaydedeceğinizi, yenileyeceğinizi ve yöneteceğinizi öğrenin.

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

Android için Yerler SDK'sı sonuçlarını Google Haritalar'da veya harita olmadan görüntüleyebilirsiniz. Android için Yerler SDK'sı sonuçlarını haritada görüntülemek istiyorsanız bu sonuçlar bir Google Haritası'nda gösterilmelidir. Android için Yerler SDK'sı verilerinin Google haritası olmayan bir haritada kullanılması yasaktır.

Uygulamanız bir Google Haritası'nda veri gösteriyorsa Google logosu eklenir ve değiştirilemez. Google verilerini bir Google Haritası ile aynı ekranda gösteren uygulamaların Google'a daha fazla ilişkilendirme sağlaması gerekmez.

Uygulamanız, Google Haritalar'ın da gösterilmediği bir sayfada veya görünümde veri gösteriyorsa bu verilerle birlikte bir Google logosu göstermeniz gerekir. Örneğin, uygulamanız bir sekmede Google verilerini, başka bir sekmede ise bu verileri içeren bir Google Haritası gösteriyorsa ilk sekmede Google logosu gösterilmelidir. Uygulamanız otomatik tamamlama özelliğine sahip veya sahip olmayan arama alanları kullanıyorsa logo satır içi olarak gösterilmelidir.

Google logosu haritanın sol alt köşesine, ilişkilendirme bilgileri ise sağ alt köşesine yerleştirilmelidir. Her ikisi de haritanın altında veya uygulamadaki başka bir yerde değil, haritanın üzerinde bir bütün olarak sunulmalıdır. Aşağıdaki harita örneğinde, haritanın sol alt kısmında Google logosu, sağ alt kısmında ise ilişkilendirme gösterilmektedir.

politika ilişkilendirme yerleşimi

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

İndir: google_logo.zip

İlişkilendirmeyi değiştirmeyin. İlişkilendirme bilgilerini kaldırmayın, gizlemeyin veya kırpmayın. Google logolarını satır içi olarak kullanamazsınız (ör. "Bu haritalar [Google_logo]'dan alınmıştır").

İlişkilendirmeyi yakın tutun. Doğrudan yerleştirmeler dışında Google görüntülerinin ekran görüntülerini kullanıyorsanız standart ilişkilendirmeyi resimde göründüğü şekilde ekleyin. Gerekirse ilişkilendirme metninin stilini ve yerleşimini özelleştirebilirsiniz. Bunun için metnin içeriğe yakın olması ve ortalama bir izleyici veya okuyucu tarafından okunabilir olması gerekir. İlişkilendirmeyi içeriğin dışına (ör. kitabınızın sonuna, dosyalarınızın veya programınızın jeneriğine ya da web sitenizin altbilgisine) taşıyamazsınız.

Üçüncü taraf veri sağlayıcıları dahil edin. Haritacılık ürünlerimizdeki bazı veriler ve resimler Google dışındaki sağlayıcılardan gelir. Bu tür görüntüler kullanıyorsanız atıf metninizde "Google" adı ve ilgili veri sağlayıcılar(ör. "Harita verileri: Google, Maxar Technologies") belirtilmelidir. Görüntülerle birlikte üçüncü taraf veri sağlayıcılar belirtiliyorsa yalnızca "Google" veya Google logosunun eklenmesi uygun ilişkilendirme değildir.

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

Diğer ilişkilendirme koşulları

Üçüncü taraf ilişkilendirmelerini almak ve uygulamanızda görüntülemek için bu talimatları uygulayın.

Bir yerden ilişkilendirmeleri alma

Uygulamanız get place by ID çağrısı yapılarak elde edilen bilgileri gösteriyorsa elde edilen yer ayrıntıları için üçüncü taraf ilişkilendirmelerini de göstermelidir.

API, bir Place nesnesi döndürür. Place nesnesinden ilişkilendirmeleri almak için Place.getAttributions() işlevini çağırın. Yöntem, String nesnesi içeren bir List döndürür veya gösterilecek ilişkilendirme yoksa null değerini döndürür.

String placeId = "INSERT_PLACE_ID_HERE";
List<Place.Field> placeFields = Arrays.asList(Place.Field.ID, Place.Field.DISPLAY_NAME);
FetchPlaceRequest request = FetchPlaceRequest.newInstance(placeId, placeFields);

placesClient.fetchPlace(request).addOnSuccessListener((response) -> {
  Place place = response.getPlace();
  textView.append("Place found: " + place.getName());
  List<String> attributions = place.getAttributions();
  if (attributions != null) {
    StringBuilder stringBuilder = new StringBuilder("Attributions: ");
    for (String attribution : attributions) {
      stringBuilder.append(attribution).append("\n");
    }
    textView.append(stringBuilder.toString());
  }}).addOnFailureListener((exception) -> {
    if (exception instanceof ApiException) {
      // Handle the error.
    }
  }
);

Fotoğraflarla ilgili atıfları gösterme

Uygulamanızda yer fotoğrafları gösteriliyorsa bu fotoğrafların her biri için ilişkilendirmeleri göstermeniz gerekir. PhotoMetadata, şu iki ilişkilendirme türünden birini içerebilir:

Bir fotoğrafın dize ilişkilendirmelerini almak için PhotoMetadata.getAttributions() işlevini çağırın. Yöntem, bir HTML karakter dizisi veya görüntülenecek ilişkilendirme yoksa boş bir dize döndürür.

// Get the photo metadata from the Place object.
PhotoMetadata photoMetadata = place.getPhotoMetadatas().get(0);

// Get the attribution text.
String attributions = photoMetadata.getAttributions();

Bir fotoğrafın yazar ilişkilendirmelerini almak için PhotoMetadata.getAuthorAttributions() numaralı telefonu arayın. Yöntem bir AuthorAttributions nesnesi döndürür. Bu öğe, yazar ilişkilendirmesi başına bir tane olmak üzere AuthorAttribution öğesinden oluşan bir List içerir.

// Get the photo metadata from the Place object.
PhotoMetadata photoMetadata = place.getPhotoMetadatas().get(0);

// Get the author attributions object.
AuthorAttributions authorAttributions = photoMetadata.getAuthorAttributions();
List<AuthorAttribution> authorAttributionList = authorAttributions.asList();

Arama sonucu ilişkilendirmeleri

Avrupa'da, Google'ın saf sıralaması kullanılırken arama ürünlerinde, arama sonuçları sıralamasını belirleyen ana faktörleri ve bu faktörlerin ağırlıklarını açıklayan, en fazla 1 tıklama uzaklıkta bir açıklama metni 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ğlantı vermelidir.

2. Düğme: Tamam

Yorumları görüntüleme

Bir Place nesnesi en fazla beş yorum içerebilir. Her yorum, bir Review nesnesi ile temsil edilir. Dilerseniz bu yorumları uygulamanızda gösterebilirsiniz.

Google kullanıcıları tarafından eklenen yorumları gösterirken yazarın adını yakın bir yere yerleştirmeniz gerekir. Review nesnesinin yazar ilişkilendirme alanında mevcut olduğunda yazarın fotoğrafını ve profil bağlantısını da eklemenizi öneririz. Aşağıdaki resimde bir parkın yorumu gösterilmektedir:

Yazar ilişkilendirmesi görüntüleme

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

Yorumlara erişmek için Place.getReviews() numaralı telefonu arayın:

// Specify the fields to return.
final List<Place.Field> placeFields = Arrays.asList(Place.Field.REVIEWS);

// Construct a request object, passing the place ID and fields array.
final FetchPlaceRequest request = FetchPlaceRequest.newInstance("INSERT_PLACE_ID_HERE", placeFields);

placesClient.fetchPlace(request).addOnSuccessListener((response) -> {
    Place place = response.getPlace();
    List<Review> reviews = place.getReviews();
    // For loop for iterating over the List
    for (int i = 0; i < reviews.size(); i++) {
      // For each review, get the Review object.
        Review placeReview = reviews.get(i);

      // Get any attribution and author attribution.
        String reviewAttribution = placeReview.getAttribution();
        AuthorAttribution authorAttribution = placeReview.getAuthorAttribution();

        // Display the review contents and attributions as necessary.
    }
}).addOnFailureListener((exception) -> {
    if (exception instanceof ApiException) {
        // Handle the error.
    }
});

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

Üçüncü taraf sağlayıcılara ait ilişkilendirmeler, HTML biçiminde içerik ve bağlantılar içerir. Bu içerik ve bağlantıları, sağlandıkları biçimde koruyup kullanıcıya göstermeniz gerekir. Google, bu bilgileri yer ayrıntılarının altında göstermenizi önerir.

API, uygulama tarafından kullanılan tüm yerler için ilişkilendirmeler oluşturur. İlişkilendirmeler yer başına değil, API çağrısı başına sağlanır.

İlişkilendirmeleri göstermenin bir yolu da TextView iledir. Örneğin:

TextView attributionsText = (TextView) findViewById(R.id.attributions);
String thirdPartyAttributions = place.getAttributions();
attributionsText.setText(thirdPartyAttributions);

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

Listings by <a href="https://www.example.com/">Example Company</a>

Google ilişkilendirme için stil yönergeleri

İndirilebilir Google logosunu kullanamıyorsanız CSS ve HTML'de Google ilişkilendirmeleri için stil yönergeleri aşağıda verilmiştir.

Boş alan

Kilitlenmenin etrafındaki boş alanın boyutu, Google'daki "G" harfinin yüksekliğine eşit veya bu yükseklikten büyük olmalıdır.

İlişkilendirme metni ile Google logosu arasındaki boşluk, "G" harfinin yarısı kadar olmalıdır.

Okunabilirlik

Yazar adı her zaman net ve okunaklı olmalı, belirli bir arka plana uygun renk varyasyonunda gösterilmelidir. Seçtiğiniz logo varyantında her zaman yeterli kontrast sağladığınızdan emin olun.

Renk

%0-40 oranında maksimum siyah tonunun kullanıldığı beyaz veya açık arka plan üzerinde Google Material Gray 700 metni kullanın.

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

Koyu arka planlarda, fotoğrafların veya karmaşık olmayan desenlerin üzerinde yazar adı ve ilişkilendirme 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

Aşağıdaki CSS, "Google" metnine uygulandığında "Google" ifadesini beyaz veya açık renkli bir arka planda uygun yazı tipi, renk ve aralıkla 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;