Places SDK для Android поддерживает существующие сведения о месте . Если вы знакомы с существующим пакетом Places SDK для Android, новая версия Place Details вносит следующие изменения:
Использует новую модель ценообразования. Информацию о ценах на все API см. в статье Places SDK для Android (новая версия) .
Вы должны инициализировать свое приложение, вызвав метод
Places.initializeWithNewPlacesApiEnabled()
. Дополнительную информацию о выборе службы Places API см. в разделе Настройка проекта Google Cloud .Требуется маскировка полей. Вы должны указать, какие поля вы хотите вернуть в ответе. Не существует списка возвращаемых полей по умолчанию. Если вы опустите этот список, методы вернут ошибку.
В следующих разделах описаны дополнительные изменения.
Доступ к новым типам мест
С каждым местом может быть связано одно или несколько значений типа . В Places SDK для 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 и более поздних версиях.
Доступ к отзывам о местах
В Places SDK для Android (новинка) добавлен класс Review
, который содержит обзор места. Объект Place
может содержать до пяти отзывов.
Класс Review
также может содержать указание авторства и указание автора. Если вы отображаете обзор в своем приложении, вы также должны указать указание авторства или авторство. Дополнительную информацию см. в разделе Отображение обзора .
Дополнительную информацию см. в документации по атрибуции .
Доступ к коду языка названия места
Существующий метод Place.getName()
возвращает текстовую строку, содержащую название места. Чтобы заполнить объект Place
названием места, необходимо включить Place.Field.DISPLAY_NAME
в список полей запроса сведений о месте.
Объект Place
теперь содержит код языка для строки имени. Чтобы заполнить объект Place
кодом языка, необходимо:
Включите
Place.Field.DISPLAY_NAME
в список полей запроса. Это значение настраивает ответ таким образом, чтобы он включал в объектPlace
как название места, так и код языка.Вызовите
PlacesClient.fetchPlace()
.PlacesClient.findCurrentPlace()
не поддерживает поле кода языка.Используйте метод
Place.getNameLanguageCode()
для доступа к полю кода языка в объектеPlace
.
Установить код региона
Places SDK для Android (новая версия) добавляет параметр запроса кода региона в сведения о месте. Код региона используется для форматирования ответа, указанного в виде двухсимвольного кода CLDR . Этот параметр также может оказывать влияние на результаты поиска. Значения по умолчанию нет. Вам необходимо включить новый SDK, чтобы установить код региона.
Если название страны в поле адреса в ответе соответствует коду региона, код страны в адресе опускается.
Большинство кодов CLDR идентичны кодам ISO 3166-1, за некоторыми заметными исключениями. Например, нДВУ Соединенного Королевства — «uk» (.co.uk), а его код ISO 3166-1 — «gb» (технически для организации «Соединенное Королевство Великобритании и Северной Ирландии»). Параметр может повлиять на результаты в соответствии с действующим законодательством.
Пример запроса
Полный пример см. в разделе «Сведения о месте (новое)» .