کیت توسعه نرمافزاری Places برای iOS از قابلیت تکمیل خودکار مکان (Legacy) پشتیبانی میکند. اگر با قابلیت تکمیل خودکار مکان (Legacy) آشنا هستید، قابلیت تکمیل خودکار مکان (New) تغییرات زیر را ایجاد میکند:
از یک مدل قیمتگذاری جدید استفاده میکند. برای اطلاعات قیمتگذاری برای همه APIها، به قیمتگذاری Places SDK برای iOS (جدید) مراجعه کنید.
برای ارسال یک درخواست، متد جدید
GMSPlacesClient fetchAutocompleteSuggestionsFromRequest:را فراخوانی کنید.به درخواست ارسال کنید:
نمونهای از کلاس جدید
GMSAutocompleteRequestکه تمام پارامترهای درخواست، مانند کوئری و توکن جلسه را تعریف میکند.یک تابع فراخوانی از نوع
GMSAutocompleteSuggestionsCallbackبرای مدیریت پاسخ.
کلاس
GMSAutocompleteFilterاکنون به شما امکان میدهد:- کد منطقه مورد استفاده برای تعیین قالببندی نتایج را تنظیم کنید.
- آفست پیشبینی، یک آفست کاراکتر یونیکد مبتنی بر صفر برای پرسوجو، را تنظیم کنید.
پاسخ توسط کلاس جدید
GMSAutocompleteSuggestionتعریف میشود. این کلاس شامل آرایهای از نمونههایی از نوع جدیدGMSAutocompletePlaceSuggestionاست که نشاندهنده پیشنهادها هستند.جلسه اکنون با فراخوانی یکی از گزینههای «جزئیات مکان (جدید)» یا «اعتبارسنجی آدرس» به پایان میرسد. برای اطلاعات بیشتر، به «تکمیل خودکار (جدید)» و «قیمتگذاری جلسه» مراجعه کنید.
درخواست نمونه
با Place Autocomplete (جدید)، شما یک درخواست ارسال میکنید و تمام پارامترها را در نمونه GMSAutocompleteRequest ارسال میکنید:
سویفت
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
})
هدف-سی
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.
}
}
}];