В этом разделе изложены требования по указанию авторства для всех приложений, разработанных с помощью Places SDK для Android, в том числе сервиса автозаполнения мест, который является частью этого API. Дополнительная информация приводится в Условиях использования платформы Google Карт.
Правила
В этом разделе описаны правила, относящиеся к Places SDK для Android. В правилах содержатся практические рекомендации и требования по реализации, которые помогут вам правильно использовать Сервис в соответствии с ожиданиями платформы Google Карт.
Исключения из ограничений на кеширование
Обратите внимание, что ограничения по кешированию не распространяются на уникальные идентификаторы мест.
Поэтому их можно хранить в течение неограниченного времени.
Идентификатор места возвращается в поле place_id в ответах API. Подробнее о том, как сохранять и обновлять идентификаторы мест, а также управлять ими…
Страны и территории Европейской экономической зоны
Для клиентов с платежным адресом в Европейской экономической зоне (ЕЭЗ) действуют другие Условия использования этого продукта, а также могут быть доступны другие функции. Прежде чем начать работу с платформой Google Карт, ознакомьтесь со следующими условиями и информацией для ЕЭЗ:
- Условия использования платформы Google Карт в ЕЭЗ
- Специальные условия использования платформы Google Карт в ЕЭЗ
- Часто задаваемые вопросы о ЕЭЗ
- Требования платформы Google Карт к безопасности дорожного движения
Если ваш платежный адрес находится за пределами ЕЭЗ, к вам применяются следующие условия использования:
Требования к атрибуции Google Карт
В этом разделе приведены требования и рекомендации по указанию авторства при показе Google Карт и Контента в ваших приложениях.
Пример атрибуции
Ниже приведен пример атрибуции для Places UI Kit.
Показ атрибуции Google Карт
При показе контента из API платформы Google Карт в приложении или на сайте необходимо соблюдать требования Google Карт к указанию авторства. Если Контент показывается на карте Google, где уже указан источник, дополнительно указывать его не нужно.
Добавлена атрибуция Google Карт
Для атрибуции Google Карт, которая уже предоставляется платформой Google Карт в пользовательском интерфейсе, например в Places UI Kit:
- Не удаляйте информацию об авторстве, где бы она ни находилась. Не изменяйте и не скрывайте атрибуцию. Она должна быть хорошо видна на фоне.
- Всегда визуально отделяйте контент платформы Google Карт от другого контента, используя такие элементы интерфейса, как рамка, цвет фона, тень или достаточное количество пробелов.
- При внесении визуальных изменений вы должны соблюдать все требования Google Карт к указанию авторства.
Логотип и текстовая атрибуция Google Карт
По возможности в качестве атрибуции следует использовать логотип Google Карт. Если места недостаточно, можно использовать текст Google Карты. Конечным пользователям всегда должно быть понятно, какой контент предоставлен Google Картами.
Атрибуция логотипа
Ниже приведены требования к использованию логотипа Google Карт в приложении или на сайте.Скачать логотипы Google Карт
Используйте официальные файлы логотипа Google Карт. Скачайте логотипы ниже и следуйте инструкциям в этом разделе.
Скачать объекты атрибуции Google КартПри использовании логотипа Google Карт следуйте приведенным ниже рекомендациям.
- Не изменяйте логотип.
- Сохраняйте соотношение сторон логотипа, чтобы избежать искажений.
- Используйте логотип с контуром на фоне с большим количеством деталей, например на карте или изображении.
- Используйте логотип без контура на простом фоне, например на сплошном цвете или едва заметном градиенте.
Требования к размеру логотипа
Соблюдайте следующие требования к размеру логотипа Google Карт:- Минимальная высота логотипа: 16 dp.
- Максимальная высота логотипа: 19 dp.
- Минимальное свободное пространство вокруг логотипа: 10 dp слева, справа и сверху, 5 dp снизу.
Подробнее о dp читайте в статье Плотность пикселей на сайте Material Design.
Доступность логотипа
При использовании логотипа Google Карт соблюдайте следующие требования к специальным возможностям:- Поддерживайте доступный контраст между логотипом и фоном.
- Добавьте ярлык специальных возможностей с текстом Google Карты.
Текстовая атрибуция
Если размер интерфейса не позволяет использовать логотип Google Карт, вы можете написать Google Карты текстом. Придерживайтесь следующих рекомендаций:
- Не изменяйте текст Google Карты:
- Не меняйте регистр букв в названии Google Карты.
- Не переносите название Google Карты на несколько строк.
- Не переводите название Google Maps на другие языки.
- Чтобы браузеры не переводили Google Карты, используйте HTML-атрибут
translate="no".
Оформляйте текст Google Карт, как описано в таблице ниже.
Требования к оформлению текста в Google Картах Ресурс Стиль Семейство шрифтов Roboto. Загружать шрифт необязательно. Резервное семейство шрифтов Любой шрифт без засечек, который уже используется в вашем продукте, или Sans-Serif, чтобы вызвать системный шрифт по умолчанию. Стиль шрифта Обычный Насыщенность шрифта 400 Цвет шрифта Белый, черный (#1F1F1F) или серый (#5E5E5E). Контрастность по отношению к фону должна быть не менее 4,5:1. Размер шрифта Минимальный размер шрифта: 12 sp.
Максимальный размер шрифта: 16 sp.
Подробнее о единицах измерения размера шрифта…Расстояние между символами Обычный
Пример CSS
Ниже приведен код CSS, с помощью которого можно отобразить логотип Google Карт на белом или светлом фоне с использованием подходящего шрифта и цвета.
@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; }
Требования к визуальным элементам
Ниже приведены требования к визуальному оформлению атрибуции Google Карт.Размещайте атрибуцию в верхней или нижней части контента и в том же визуальном контейнере. Если атрибуция занимает одну строку, ее можно разместить справа или слева.
Визуально отделяйте контент платформы Google Карт от другого контента, используя элементы интерфейса, такие как рамка, цвет фона, тень или достаточное количество пустого пространства.
- Не вводите пользователей в заблуждение, выдавая контент, не относящийся к платформе Google Карт, за контент Google Карт.
- Убедитесь, что атрибуция всегда видна и легко читается. Запрещается удалять, скрывать или изменять его.
На рисунках ниже показаны примеры этих визуальных требований.
Внешними поставщиками данных.
Некоторые данные и изображения в картографических продуктах Google принадлежат сторонним поставщикам. Для некоторых продуктов, например Map Tiles API, мы можем предоставить вам необходимую атрибуцию стороннего поставщика данных. В этом случае в указании авторства, помимо Google Карт, должны присутствовать названия и других поставщиков данных, например "Картографические данные: Google, Maxar Technologies". Если Google указывает авторство третьих лиц, недостаточно включить в сведения об авторстве только название или логотип Google.
Другие требования по указанию авторства
Ниже приведены инструкции о том, как получать сведения об авторстве третьих сторон и показывать их в приложении.
Как получать сведения об авторстве из объекта Place
Если в вашем приложении демонстрируется информация, полученная с помощью вызова get place by ID, в информации о местах также должно быть указано авторство третьей стороны.
API возвращает объект Place. Чтобы получить сведения об авторстве из объекта Place, вызовите метод Place.getAttributions().
Метод возвращает List (список) объектов типа String. Если сведения об авторстве отсутствуют, возвращается значение null.
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. } } );
Как показывать сведения об авторах фотографий
Если в вашем приложении демонстрируются фотографии мест, для каждой из них должно быть указано авторство (при наличии таких сведений).
PhotoMetadata может содержать атрибуцию двух типов:
- Атрибуции – строка атрибуции, доступ к которой осуществляется с помощью
PhotoMetadata.getAttributions(). - AuthorAttributions – объект
AuthorAttributions, доступ к которому осуществляется черезPhotoMetadata.getAuthorAttributions().
Чтобы получить сведения об авторе фотографии, вызовите PhotoMetadata.getAttributions(). Этот метод возвращает последовательность символов HTML или пустую строку, если сведения об авторстве отсутствуют.
// Get the photo metadata from the Place object. PhotoMetadata photoMetadata = place.getPhotoMetadatas().get(0); // Get the attribution text. String attributions = photoMetadata.getAttributions();
Чтобы получить сведения об авторе фотографии, вызовите PhotoMetadata.getAuthorAttributions(). Метод возвращает объект AuthorAttributions. Этот объект содержит List объектов AuthorAttribution, по одному на каждого автора.
// 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();
Атрибуция результатов поиска
В Европе при использовании неизмененного ранжирования Google в поисковых продуктах должен быть пояснительный текст, доступный не более чем в один клик. В нем должны быть описаны основные факторы и их вес, определяющие ранжирование результатов поиска. Пояснение:
Заголовок: Об этих результатах
Основной текст: Когда вы ищете организации или места рядом с конкретным адресом, Google Карты показывают местные результаты. Выбор результатов зависит от разных факторов, в основном от релевантности, расстояния и заметности.
Кнопка 1: Подробнее
Текст "Подробнее" должен ссылаться на статью Справочного центра.
Кнопка 2: ОК
Как показывать отзывы
Объект Place может содержать до пяти отзывов, каждый из которых представлен объектом Review. При желании вы можете показывать эти отзывы в своем приложении.
При показе отзывов, оставленных пользователями Google, рядом обязательно должно быть указано имя автора. Мы также рекомендуем добавлять фотографию пользователя и ссылку на его профиль, если в поле с указанием автора в объекте Review есть эти данные. Ниже приведен пример отзыва на парк.

Google также рекомендует показывать конечным пользователям, как сортируются отзывы.
Чтобы получить доступ к отзывам, вызовите метод Place.getReviews().
// 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. } });
Отображение данных об авторстве третьей стороны
Атрибуция сторонних поставщиков содержит контент и ссылки в формате HTML, которые вы должны сохранить и показать пользователю в том виде, в котором они предоставлены. Google рекомендует показывать эту информацию под сведениями о месте.
API генерирует атрибуцию для всех мест, используемых приложением. Атрибуция предоставляется для каждого вызова API, а не для каждого места.
Один из способов показать атрибуцию – использовать TextView.
Пример:
TextView attributionsText = (TextView) findViewById(R.id.attributions); String thirdPartyAttributions = place.getAttributions(); attributionsText.setText(thirdPartyAttributions);
Пример указания авторства третьей стороны
Listings by <a href="https://www.example.com/">Example Company</a>
Автозаполнение адресов конечных пользователей
Если конечный пользователь вводит почтовый адрес в Приложении клиента с помощью функции автозаполнения, но мог бы ввести его полностью и точно и без нее, то на выбранный адрес не распространяются ограничения на контент Google Карт, указанные в Соглашении об использовании платформы Google Карт. Это исключение распространяется только на почтовый адрес, выбранный конечным пользователем, и только для конкретной транзакции этого конечного пользователя. Оно не распространяется на список предлагаемых адресов, предоставляемый функцией автозаполнения, или на другой контент Google Карт. Это исключение не распространяется на функции поиска объектов инфраструктуры и адресов, предлагаемые другими сервисами платформы Google Карт.

На предыдущем изображении список адресов слева по-прежнему подпадает под ограничения на контент Google Карт. После того как конечный пользователь выберет адрес, на этот адрес не будут распространяться ограничения в отношении Контента Google Карт, но только в целях транзакции, выполняемой этим конечным пользователем.