Миграция из Place Details (устаревшая версия) в Place Details (новая версия)

Разработчики из Европейской экономической зоны (ЕЭЗ)

Places SDK для Android поддерживает Place Details (Legacy) . Если вы знакомы с Place Details (Legacy), то Place Details (New) вносит следующие изменения:

  • Используется новая модель ценообразования. Информацию о ценах на все API см. в разделе Places SDK для Android (новая версия) .

  • Для инициализации приложения необходимо вызвать метод Places.initializeWithNewPlacesApiEnabled() . Дополнительную информацию о выборе службы Places API см. в разделе «Настройка проекта Google Cloud» .

  • Необходимо указать, какие поля вы хотите получить в ответе. Список возвращаемых полей по умолчанию отсутствует. Если вы его не укажете, методы вернут ошибку.

В следующих разделах описаны дополнительные изменения.

Получите доступ к новым типам мест.

Каждое место может иметь одно или несколько связанных с ним значений типа . SDK Places для Android версии 3.3.0 и более поздних версий добавляет множество новых значений типа. Полный список см. в разделе «Расширенные типы мест» .

Метод Place.getPlaceTypes() возвращает значения типов в виде списка строковых значений. Возвращаемые значения зависят от вашей версии Places SDK для Android:

  • Places SDK для Android (новое) : Возвращает строки, определенные таблицами A и B, показанные в разделе «Типы мест (новое)» , включая все добавленные типы мест, появившиеся в версии 3.3.0.

  • Places SDK для Android : Возвращает перечисления, определенные в Place.Types , за исключением новых типов, добавленных в версии 3.3.0 и более поздних.

Отзывы о местах доступа

В состав SDK Places для Android (новая версия) добавлен класс Review , содержащий отзыв о месте. Объект Place может содержать до пяти отзывов.

Класс Review также может содержать информацию об авторстве и указание на автора. Если вы отображаете отзыв в своем приложении, то вы также должны отобразить любую информацию об авторстве или указание на автора. Для получения дополнительной информации см. раздел «Отображение отзыва» .

Для получения более подробной информации см. документацию по атрибуции .

Код языка названия места доступа

В SDK Places для Android (устаревшая версия) метод Place.getName() возвращает текстовую строку, содержащую название места. Чтобы заполнить объект Place названием места, необходимо включить Place.Field.DISPLAY_NAME в список полей запроса с подробными сведениями о месте.

Объект Place теперь содержит код языка для строки имени. Чтобы заполнить объект Place кодом языка, необходимо:

  1. Включите поле Place.Field.DISPLAY_NAME в список полей запроса. Это значение настраивает ответ таким образом, чтобы в объекте Place содержались как название места, так и код языка.

  2. Вызовите метод PlacesClient.fetchPlace() . PlacesClient.findCurrentPlace() не поддерживает поле кода языка.

  3. Для доступа к полю кода языка в объекте Place используйте метод Place.getNameLanguageCode() .

Установить код региона

В новом SDK для Android добавлен параметр запроса кода региона в раздел «Подробности о месте». Код региона используется для форматирования ответа и указывается в виде двухсимвольного кода CLDR . Этот параметр также может влиять на результаты поиска. Значение по умолчанию отсутствует. Для установки кода региона необходимо включить новый SDK.

Если название страны в адресном поле ответа совпадает с кодом региона, то код страны опускается в адресе.

Большинство кодов CLDR идентичны кодам ISO 3166-1, за некоторыми заметными исключениями. Например, национальный домен верхнего уровня Соединенного Королевства — «uk» (.co.uk), а его код ISO 3166-1 — «gb» (технически обозначающий «Соединенное Королевство Великобритании и Северной Ирландии»). Параметр может влиять на результаты в зависимости от применимого законодательства.

Пример запроса

Полный пример см. в разделе «Подробности о месте (новое)» .