SDK Địa điểm dành cho iOS hỗ trợ các Tự động hoàn thành địa điểm. Nếu bạn đã quen với Vị trí Tự động hoàn thành, phiên bản mới của Tự động hoàn thành địa điểm thực hiện các 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 Đặt giá cho SDK Địa điểm dành cho iOS (Mới).
Để gửi yêu cầu, hãy gọi
GMSPlacesClient fetchAutocompleteSuggestionsFromRequest:
.Chuyển đến yêu cầu:
Một phiên bản của
GMSAutocompleteRequest
xác định tất cả các tham số yêu cầu, chẳng hạn như truy vấn và mã phiên hoạt động.Lệnh gọi lại thuộc loại
GMSAutocompleteSuggestionsCallback
để xử lý phản hồi.
Chiến lược phát hành đĩa đơn
GMSAutocompleteFilter
class 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
GMSAutocompleteSuggestion
. Lớp này chứa một mảng các thực thể thuộc kiểu mớiGMSAutocompletePlaceSuggestion
đại diện cho các đề xuất.Giờ đây, phiên họp sẽ kết thúc bằng việc gọi đến một trong hai Thông tin chi tiết về địa điểm (Mới) hoặc Xác thực địa chỉ. Để thông tin khác, xem Tự động hoàn thành (Mới) và định giá cho phiên hoạt động.
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 đưa ra 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.
}
}
}];