O SDK do Places para iOS é compatível com a versão Place Autocomplete Se você já conhece o Place Autocomplete, a nova versão Place Autocomplete faz as seguintes alterações:
Usa um novo modelo de preços. Para informações sobre preços de todas as APIs, consulte Preços do SDK do Places para iOS (novo).
Para fazer uma solicitação, chame o novo
GMSPlacesClient fetchAutocompleteSuggestionsFromRequest:
.Passe para a solicitação:
Uma instância do novo
GMSAutocompleteRequest
que define todos os parâmetros de solicitação, como a consulta e token de sessão.Um callback do tipo
GMSAutocompleteSuggestionsCallback
para lidar com a resposta.
O
GMSAutocompleteFilter
agora permite que você:- Defina o código da região usado para determinar a formatação dos resultados.
- Defina o deslocamento de previsão, um deslocamento de caracteres Unicode baseado em zero do consulta.
A resposta é definida pelo novo
GMSAutocompleteSuggestion
. Esta classe contém uma matriz de instâncias do novo tipoGMSAutocompletePlaceSuggestion
que representam as sugestões.A sessão termina com uma chamada para Place Details (novo) ou Validação de endereço. Para mais informações, consulte Autocomplete (novo) e preço da sessão.
Exemplo de solicitação
Com o Place Autocomplete (novo), você faz uma solicitação e
transmita todos os parâmetros na instância GMSAutocompleteRequest
:
Swift
let token = GMSAutocompleteSessionToken()
let northEastBounds = CLLocationCoordinate2DMake(37.38816277477739, -122.08813770258874)
let southWestBounds = CLLocationCoordinate2DMake(37.39580487866437, -122.07702325966572)
let filter = GMSAutocompleteFilter()
filter.types = [kGMSPlaceTypeRestaurant]
filter.locationBias = GMSPlaceRectangularLocationOption(northEastBounds, southWestBounds)
let request = GMSAutocompleteRequest(query:"Sicilian piz")
request.filter = filter
request.sessionToken = token
GMSPlacesClient.shared().fetchAutocompleteSuggestions(from: request, callback: { results, error in
// Handle response
})
Objective-C
CLLocationCoordinate2D northEast = CLLocationCoordinate2DMake(37.38816277477739, -122.08813770258874);
CLLocationCoordinate2D southWest = CLLocationCoordinate2DMake(37.39580487866437, -122.07702325966572);
GMSAutocompleteFilter *filter = [[GMSAutocompleteFilter alloc] init];
filter.types = @[ kGMSPlaceTypeRestaurant ];
filter.locationBias = GMSPlaceRectangularLocationOption(northEast, southWest);
GMSAutocompleteRequest *request = [[GMSAutocompleteRequest alloc] initWithQuery:@"Sicilian piz"];
request.sessionToken = token;
request.filter = filter;
[[GMSPlacesClient sharedClient] fetchAutocompleteSuggestionsFromRequest:request callback:^(NSArray<GMSAutocompleteSuggestion *> * results, NSError * error){
// Handle response
for (GMSAutocompleteSuggestion *suggestion in results) {
if (suggestion.placeSuggestion) {
// Show place suggestion data.
}
}
}];