SDK Địa điểm dành cho iOS hỗ trợ tính năng Tự động hoàn thành địa điểm hiện có. Nếu bạn đã quen thuộc với tính năng Tự động hoàn thành địa điểm hiện có, phiên bản mới của tính năng Tự động hoàn thành địa điểm sẽ thực hiện những thay đổi sau:
Sử dụng mô hình định giá mới. Để biết thông tin về giá của tất cả API, hãy xem Đặt giá cho SDK Địa điểm dành cho iOS (Mới).
Để đưa ra 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
GMSAutocompleteRequest
mới xác định tất cả các tham số yêu cầu, chẳng hạn như mã 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
GMSAutocompleteFilter
hiện cho phép bạn:- Đặt mã vùng 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 0 của truy vấn.
Phản hồi được xác định bằng lớp
GMSAutocompleteSuggestion
mới. Lớp này chứa một mảng các thực thể của kiểu mớiGMSAutocompletePlaceSuggestion
đại diện cho các đề xuất.Phiên hoạt động này hiện kết thúc bằng một lệnh gọi đến Thông tin chi tiết về địa điểm (Mới) hoặc Xác thực địa chỉ. Để biết thêm thông tin, hãy xem phần Tự động hoàn thành (Mới) và đặt giá cho phiên.
Yêu cầu mẫu
Với tính năng Tự động hoàn thành địa điểm (Mới), bạn sẽ đưa ra 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.
}
}
}];