В этом разделе изложены требования по указанию авторства для всех приложений, разработанных с помощью Places SDK для Android, в том числе сервиса автозаполнения мест, который является частью этого API. Дополнительная информация приводится в Условиях использования платформы Google Карт.
Правила
В этом разделе описаны правила, относящиеся к Places SDK для Android. В правилах содержатся практические рекомендации и требования по реализации, которые помогут вам правильно использовать Сервис в соответствии с ожиданиями платформы Google Карт.
Хранение, кеширование и скрейпинг данных
При использовании контента Google Карт в приложении соблюдайте требования к обработке данных, изложенные в разделе 3.2.3 Условий использования платформы Google Карт и Условий использования сервисов платформы Google Карт:
- Ограничения на кеширование и скрейпинг (раздел 3.2.3(a) и (b)). Кешировать или хранить контент Google Карт можно только в случаях, явно разрешенных Условиями использования сервисов платформы Google Карт. Не экспортируйте, не извлекайте и не собирайте Контент Google Карт для использования за пределами Сервисов. Например, запрещается предварительно извлекать, индексировать, хранить или распространять Контент Google Карт за пределами Сервисов; массово скачивать фрагменты карт, изображения Просмотра улиц, геокоды, маршруты, результаты матрицы расстояний, информацию о дорогах, местах, высоте над уровнем моря или часовых поясах; копировать и сохранять названия и адреса компаний или отзывы пользователей.
- Ограничения на производный контент (раздел 3.2.3(c)). Используйте контент Google Карт в своем приложении в соответствии с Условиями использования платформы Google Карт. Не создавайте контент на основе контента Google Карт. Например, не отслеживайте и не оцифровывайте объекты на спутниковых снимках, не создавайте 3D-модели или модели рельефа, не используйте значения широты и долготы Places в качестве входных данных для анализа точек в многоугольнике, не создавайте индекс местоположений на основе изображений Просмотра улиц и не преобразуйте текстовые данные о времени в пути в синтезированную речь.
Чтобы сократить время реакции и сумму к оплате, не кешируя данные с ограниченным доступом, используйте маски или списки полей, чтобы запрашивать только те поля, которые нужны для вашего пользовательского интерфейса. Храните идентификаторы, на которые не распространяются ограничения, например идентификатор места, чтобы получать актуальные данные, когда пользователь взаимодействует с местом.
Инженеры службы технической поддержки Google не дают юридических консультаций и не могут делать исключения из Условий использования платформы Google Карт. Проконсультируйтесь с юристом, чтобы определить, соответствует ли ваша реализация условиям, или обратитесь в отдел продаж, если для вашего варианта использования требуется специальная лицензия.
Исключения из ограничений на кеширование
Специальные условия использования платформы Google Карт допускают следующие исключения:
- Идентификаторы мест. Ограничения по кешированию не распространяются на уникальные идентификаторы мест.
Поэтому их можно хранить в течение неограниченного времени. Идентификаторы мест возвращаются в поле
idилиplace_idв ответах API. Подробнее о том, как сохранять и обновлять идентификаторы мест, а также управлять ими… - Географические координаты. Вы можете временно кешировать значения широты (
latitude) и долготы (longitude) на срок до 30 календарных дней подряд, после чего вы должны удалить кешированные координаты, если используете сервисы, для которых это исключение предусмотрено в Условиях использования отдельных сервисов платформы Google Карт:- Routes API, Route Optimization API, Directions API (устаревший) и Roads API
- Geocoding API, Geolocation API и Address Validation API
- Places API, Places UI Kit и Navigation SDK
- Сроки кеширования для отдельных сервисов. В Условиях использования платформы Google Карт для отдельных сервисов также определены сроки кеширования для отдельных полей и разрешенные цели для Address Validation API, Air Quality API, Pollen API, Solar API, Weather API и Places Aggregate 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 Карты.
- Запретите браузерам переводить 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 может содержать два типа атрибуции:
- Attributions – строка атрибуции, доступ к которой можно получить с помощью метода
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 Карт, исключительно для целей соответствующей транзакции этого конечного пользователя.