迁移至地点自动补全(新)

Places SDK for iOS 支持现有的地点自动补全。如果您熟悉现有的地点自动补全功能,新版本的地点自动补全功能会做出以下更改:

示例请求

使用“地点自动补全(新)”时,您可以发出请求并传递 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.
      }
    }
  }];