AutocompleteService.getPlacePredictions возвращает ZERO_RESULTS с номером квартиры - PullRequest
0 голосов
/ 21 февраля 2019

При вызове AutocompleteService.getPlacePredictions со следующим полем request параметра input, установленным на адрес, подобный 3395 Michelson Dr, Irvine, CA 92612, я получаю результат сопоставления, как и ожидалось.

Однакостатус ZERO_RESULTS возвращается, если адрес включает номер квартиры, как в любом из следующих примеров:

3395 Michelson Dr APT 1306
3395 Michelson Dr, APT 1306
3395 Michelson Dr APT 1306, Irvine, CA 92612
3395 Michelson Dr, APT 1306, Irvine, CA 92612
3395 Michelson Dr, Irvine, CA 92612 APT 1306
3395 Michelson Dr, Irvine, CA 92612, APT 1306
3395 Michelson Dr #1306
3395 Michelson Dr, #1306
3395 Michelson Dr #1306, Irvine, CA 92612
3395 Michelson Dr, #1306, Irvine, CA 92612
3395 Michelson Dr, Irvine, CA 92612 #1306
3395 Michelson Dr, Irvine, CA 92612, #1306

Является ли это ожидаемым результатом?Если да, то есть ли правильный способ получения аналогичных прогнозов места с учетом того, что номер квартиры или люкса должен быть включен во входные данные?

1 Ответ

0 голосов
/ 28 февраля 2019

На этот вопрос ответили в проблеме поддержки (https://issuetracker.google.com/35830389#comment3):

Поддержка элементов subpremise (apt. / Suite) ограничена. Place Autocomplete не предназначена для универсальной поддержки этих элементов).

API геокодирования найдет эти места и вернет элементы subpremise в address_components:

9500 Bryn Mawr Avenue # 650: https://google -developers.appspot.com / maps / documents/ utils / geocoder / # q% 3D9500% 2520Bryn% 2520Mawr% 2520Avenue% 2520% 2523650% 2520Redlands% 26nfw% 3D1

1403/648 Бурк-стрит: https://google -developers.appspot.com / карты / документация / утилиты / геокодер / # q% 3D1403 / 648% 2520Bourke% 2520Street% 26nfw% 3D1

130 ул. Боудойна, кв. 1010: https://google -developers.appspot.com/maps/documentation/utils/geocoder/#q%3D130%2520Bowdoin%2520st.%252C%2520apt.%25201010%26nfw%3D1

Геокодирование можно использовать в качестве запасного вариантаза автозаполнением для этих запросов, Geocoder Tool на https://google -developers.appspot.com / maps / Документация/ utils / geocoder / делает это в некоторой степени: если вы нажмете Enter, не выбрав предложение, ваш ввод будет отправлен в службу геокодирования.Это помогает в 1-м и 3-м приведенных выше примерах.

Если вам требуется поддержка suite / apt за пределами этого, есть несколько более сложный запасной вариант: - используйте параметр placeIdOnly класса Autocomplete, чтобы захватить описание предложения (например,«1403/648 Bourke Street Melbrourne, Victoria, Australia») - сопоставьте это описание с набором регулярных выражений, чтобы обнаружить в них набор / подход, например, «\ d + / \ d +. * Australia» для обнаружения 123/45 ...Австралия) - если есть совпадение, отправьте описание в службу геокодирования, в противном случае запросите данные по идентификатору места. Это можно выполнить без кодирования собственного виджета автозаполнения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...