Я использую конечную точку autocompleteQuery в режиме фильтра address в своем приложении, чтобы пользователи могли искать места. Когда они выбирают место, я вызываю конечную точку lookUpPlaceID, чтобы получить подробную информацию об этом месте, а затем анализирую возвращенные компоненты адреса, чтобы попытаться извлечь номер улицы + название. Я столкнулся с некоторыми странностями, о которых, кажется, нельзя сообщать по обычным каналам:
Идентификатор места в Google ChIJUcZ-NbzMj4ARC4FFj9ogS3s - это «Мэрия Сан-Хосе»… у него установлен адрес, но он не отображается при поиске с помощью фильтра «адрес».
Идентификатор места Google ChIJm-FhNrzMj4ARvjjHMCiJdM8 - это «Мэрия Сан-Хосе»… у него не есть адрес, но делает появляется, когда я ищу с фильтром «адрес».
Я не могу использовать их инструмент «Редактировать это место», потому что он не распознает ChIJm-FhNrzMj4ARvjjHMCiJdM8 как действительное место. Это в основном похоже на ошибку в Google Places, но я не могу найти нигде, чтобы сообщить об ошибке: / В основном просто отправляю здесь сообщение на случай, если кто-то может заметить, что я что-то делаю не так
func doSearch() {
let filter = GMSAutocompleteFilter()
filter.type = .address
GMSPlacesClient.shared().autocompleteQuery("San Jose City Hall", bounds: bound, filter: filter, callback: { results, error in ... }
}
func onResultSelected(_ result: GMSAutocompletePrediction) {
GMSPlacesClient.shared().lookUpPlaceID(result.placeID, callback: { result, error in ... }
}
Очевидно, ошибки для API мест просто должны быть зарегистрированы на Issueetracker.google.com, поэтому я подал Issuesetracker.google.com/issues/79666103
Обратите внимание: фальшивые записи о местах, похоже, относятся к типу "помещения". ChIJ35EqNL1S8DURjjSMed825XU - еще один пример.