SDK Địa điểm dành cho iOS (Phiên bản cũ) hỗ trợ tính năng Place Autocomplete (Phiên bản cũ). Nếu bạn đã quen thuộc với Place Autocomplete (Cũ), thì tính năng Tự động hoàn thành (Mới) sẽ có những thay đổi sau:
Sử dụng mô hình định giá mới. Để biết thông tin về giá cho tất cả API, hãy xem phần Mức sử dụng và thanh toán.
Để gửi yêu cầu, hãy gọi phương thức
GMSPlacesClient fetchAutocompleteSuggestionsFromRequest:mới.Chuyển đến yêu cầu:
Một thực thể của lớp
GMSAutocompleteRequestmới xác định tất cả tham số yêu cầu, chẳng hạn như truy vấn và mã phiên.Lệnh gọi lại thuộc loại
GMSAutocompleteSuggestionsCallbackđể xử lý phản hồi.
Lớp
GMSAutocompleteFilterhiện cho phép bạn:- Đặt mã khu vực dùng để xác định định dạng của kết quả.
- Đặt độ lệch dự đoán, độ lệch ký tự Unicode dựa trên số 0 của truy vấn.
Phản hồi được xác định bởi lớp
GMSAutocompleteSuggestionmới. Lớp này chứa một mảng các thực thể của loại mớiGMSAutocompletePlaceSuggestionđại diện cho các đề xuất.Phiên hiện kết thúc bằng lệnh gọi đến Chi tiết địa điểm (Mới) hoặc Xác thực địa chỉ. Để biết thêm thông tin, hãy xem bài viết Tính năng Tự động hoàn thành (Mới) và giá theo phiên.
Yêu cầu mẫu
Với tính năng Tự động hoàn thành (Mới), bạn sẽ tạo một yêu cầu và truyền tất cả tham số trong thực thể 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.
}
}
}];