Tự động hoàn thành địa điểm (Mới)

Chọn nền tảng: Android iOS JavaScript Dịch vụ web

Dịch vụ Tự động hoàn thành (Mới) là một API iOS trả về đề xuất địa điểm để phản hồi yêu cầu. Trong yêu cầu, hãy chỉ định chuỗi tìm kiếm văn bản và giới hạn địa lý kiểm soát khu vực tìm kiếm.

Dịch vụ Tự động hoàn thành (Mới) có thể so khớp toàn bộ từ và chuỗi con của thông tin đầu vào, phân giải tên địa điểm, địa chỉ và dấu cộng mã. Do đó, ứng dụng có thể gửi truy vấn với tư cách người dùng để cung cấp đề xuất địa điểm nhanh chóng.

Đề xuất về địa điểm là các địa điểm, chẳng hạn như doanh nghiệp, địa chỉ và các điểm của sở thích, dựa trên chuỗi văn bản đã nhập và vùng tìm kiếm được chỉ định.

Ví dụ: bạn gọi API bằng cách sử dụng làm đầu vào một chuỗi chứa một phần thông tin do người dùng nhập, "Spagh", với khu vực tìm kiếm được giới hạn trong phạm vi Thành phố New York. Sau đó, câu trả lời chứa danh sách đề xuất địa điểm khớp với nội dung tìm kiếm và tìm kiếm, chẳng hạn như nhà hàng có tên là "Cafe Spaghetti", cùng với thông tin chi tiết về địa điểm.

Đề xuất địa điểm được trả về được thiết kế để hiển thị cho người dùng để để họ có thể chọn địa điểm mong muốn. Bạn có thể tạo Thông tin chi tiết về địa điểm (Mới) yêu cầu tải thêm thông tin về bất kỳ đề xuất địa điểm nào được trả về.

Yêu cầu tự động hoàn thành (Mới)

Tạo yêu cầu tự động hoàn thành bằng cách gọi một phương thức trên GMSPlaceClient. Bạn có thể chuyển các thông số trong GMSAutocompleteRequest . Phản hồi cung cấp đề xuất Tự động hoàn thành trong một GMSAutocompletePlaceSuggestion .

Khoá API và tham số query là bắt buộc. Bạn cũng có thể bao gồm GMSAutocompleteSessionToken để liên kết các yêu cầu với một phiên thanh toán và GMSAutocompleteFilter để áp dụng cho các kết quả.

Để biết thêm thông tin về các thông số bắt buộc và không bắt buộc, hãy xem phần thông số trong tài liệu này.

Swift

let token = GMSAutocompleteSessionToken()

let northWestBounds = CLLocationCoordinate2DMake(40.921628, -73.700051)
let southEastBounds = CLLocationCoordinate2DMake(40.477398, -74.259087)

let filter = GMSAutocompleteFilter()
filter.types = [kGMSPlaceTypeRestaurant]
filter.locationBias = GMSPlaceRectangularLocationOption(northWestBounds, southEastBounds)
    
let request = GMSAutocompleteRequest(query:"Spagh")
request.filter = filter
request.sessionToken = token

GMSPlacesClient.shared().fetchAutocompleteSuggestions(from: request, callback: { ( results, error ) in
      if let error = error {
        print("Autocomplete error: \(error)")
        return
      }
      if let autocompleteResults = results {
        for result in autocompleteResults {
          print("Result \(String(describing: result.placeSuggestion?.placeID)) with \(String(describing: result.placeSuggestion?.attributedFullText))")
        }
      }
    })

Objective-C

CLLocationCoordinate2D northEast = CLLocationCoordinate2DMake(37.388162, -122.088137);
CLLocationCoordinate2D southWest = CLLocationCoordinate2DMake(37.395804, -122.077023);

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.
    }
  }
}];

GooglePlacesSwift

let center = (37.3913916, -122.0879074)
let northEast = (37.388162, -122.088137)
let southWest = (37.395804, -122.077023)

let bias = RectangularCoordinateRegion(northEast: northEast, southWest: southWest)
let filter = AutocompleteFilter(types: [ .restaurant ], origin: center, coordinateRegionBias: bias)

let autocompleteRequest = AutocompleteRequest(query: "Sicilian piz", filter: filter)
switch await placesClient.fetchAutocompleteSuggestions(with: autocompleteRequest) {
case .success(let autocompleteSuggestions):
  // Handle suggestions.
case .failure(let placesError):
  // Handle error.
}

Câu trả lời tự động hoàn thành (Mới)

Tính năng Tự động hoàn thành trả về một mảng gồm tối đa năm GMSAutocompleteSuggestion thực thể. Mảng này chứa:

  • placeID
  • types: Các loại áp dụng cho địa điểm này.
  • distanceMeters: Khoảng cách từ điểm khởi hành.
  • attributedFullText: Văn bản đầy đủ của đề xuất mà con người có thể đọc được.
  • attributedPrimaryText: Văn bản chính của đề xuất mà con người có thể đọc được.
  • attributedSecondaryText: Văn bản phụ có thể đọc được của đề xuất.
  • structuredFormat: Tên cụ thể và văn bản phân biệt, như thành phố hoặc .

Thông số bắt buộc

truy vấn

Chuỗi văn bản mà bạn muốn tìm kiếm. Chỉ định từ đầy đủ và chuỗi con, vị trí tên, địa chỉ và mã cộng. Chiến lược phát hành đĩa đơn Dịch vụ Tự động hoàn thành (Mới) trả về kết quả trùng khớp đề xuất dựa trên chuỗi này và sắp xếp các kết quả dựa trên mức độ liên quan đã cảm nhận của chúng.

Thông số tùy chọn

loại

Một địa điểm chỉ có thể có một loại chính duy nhất trong các loại Bảng A hoặc Bảng B liên kết với thuộc tính đó. Ví dụ: loại chính có thể là mexican_restaurant hoặc steak_house.

Theo mặc định, API trả về tất cả địa điểm dựa trên tham số input, bất kể giá trị loại chính được liên kết với địa điểm là gì. Giới hạn kết quả thuộc một loại chính hoặc loại chính nhất định bằng cách truyền phương thức Tham số types.

Sử dụng tham số này để chỉ định tối đa 5 giá trị loại từ Bảng A hoặc Bảng T. Địa điểm phải khớp một trong các giá trị loại chính được chỉ định để đưa vào phản hồi.

Yêu cầu sẽ bị từ chối kèm theo lỗi INVALID_REQUEST nếu:

  • Có hơn 5 loại được chỉ định.
  • Mọi loại không nhận dạng được đều được chỉ định.

quốc gia

Chỉ bao gồm kết quả từ danh sách các khu vực chỉ định, được chỉ định dưới dạng mảng tối đa 15 ccTLD (miền cấp cao nhất) miền") 2 ký tự. Nếu bỏ qua, không có hạn chế nào được áp dụng cho câu trả lời. Ví dụ: để giới hạn các khu vực ở Đức và Pháp:

Swift

let filter = GMSAutocompleteFilter()
filter.countries = ["DE", "FR"]

Objective-C

GMSAutocompleteFilter *filter = [[GMSAutocompleteFilter alloc] init];
filter.countries = @[ @"DE", @"FR" ];

GooglePlacesSwift

let filter = AutocompleteFilter(countries: ["DE", "FR"])
  

Nếu bạn chỉ định cả locationRestrictioncountries, kết quả sẽ là nằm trong khu vực giao nhau của hai chế độ cài đặt.

inputOffset

Độ lệch ký tự Unicode dựa trên 0 cho biết vị trí con trỏ trong input. Vị trí con trỏ có thể ảnh hưởng đến cụm từ gợi ý mà hệ thống trả về. Nếu trống, độ dài mặc định là input.

Vị tríBias hoặc locationRestriction (Hạn chế vị trí)

Bạn có thể chỉ định locationBias hoặc locationRestriction, nhưng không thể chỉ định cả hai để xác định khu vực tìm kiếm. Hãy xem locationRestriction khi bạn xác định khu vực kết quả phải nằm trong và locationBias khi chỉ định khu vực mà kết quả phải gần nhưng có thể ở bên ngoài khu vực đó.

  • locationBias chỉ định một khu vực cần tìm kiếm. Vị trí này thể hiện là thiên kiến, có nghĩa là có thể trả về các kết quả liên quan đến vị trí cụ thể, bao gồm kết quả nằm ngoài khu vực chỉ định.

  • locationRestriction chỉ định một khu vực cần tìm kiếm. Kết quả bên ngoài vùng đã chỉ định sẽ không được trả về.

Chỉ định vùng locationBias hoặc locationRestriction dưới dạng hình chữ nhật khung nhìn hoặc hình tròn.

Một đường tròn được xác định bởi tâm điểm và bán kính tính bằng mét. Bán kính phải là từ 0,0 đến 50000,0. Giá trị mặc định là 0,0. Cho locationRestriction, bạn phải đặt bán kính thành một giá trị lớn hơn 0. Nếu không, yêu cầu sẽ không trả về kết quả nào.

Ví dụ:

Swift

let center = CLLocationCoordinate2DMake(40.730610, -73.935242)
let radius = 1000.0

filter.locationBias = GMSPlaceCircularLocationOption(center, radius)

Objective-C

CLLocationCoordinate2D center = CLLocationCoordinate2DMake(40.730610, -73.935242);
radius = 1000.0;

GMSAutocompleteFilter *filter = [[GMSAutocompleteFilter alloc] init];
filter.locationBias = GMSPlaceCircularLocationOption(center, radius);

GooglePlacesSwift

let center = CLLocationCoordinate2DMake(40.477398, -74.259087)

let bias = CircularCoordinateRegion(center: center, radius: 1000.0)

let filter = AutocompleteFilter(coordinateRegionBias: bias)      
  

Hình chữ nhật là một khung nhìn vĩ độ – kinh độ được biểu thị bằng hai đường chéo đối diện lowhigh điểm. Khung nhìn được coi là một khu vực đóng, nghĩa là nó bao gồm cả ranh giới của nó. Giới hạn vĩ độ phải nằm trong khoảng từ -90 đến Bao gồm 90 độ và giới hạn kinh độ phải nằm trong khoảng từ -180 đến 180 độ:

  • Nếu low = high, khung nhìn chỉ bao gồm một điểm duy nhất đó.
  • Nếu low.longitude > high.longitude, phạm vi kinh độ bị đảo ngược (giá trị khung nhìn vượt qua đường kinh độ 180 độ).
  • Nếu low.longitude = -180 độ và high.longitude= 180 độ, khung nhìn bao gồm tất cả kinh độ.
  • Nếu low.longitude = 180 độ và high.longitude = -180 độ, phạm vi kinh độ trống.

Cả lowhigh đều phải được điền và không được điền vào hộp được đại diện trống. Khung nhìn trống dẫn đến lỗi.

Ví dụ: khung nhìn này bao quanh hoàn toàn Thành phố New York:

Swift

let high = CLLocationCoordinate2DMake(40.921628, -73.700051)
let low = CLLocationCoordinate2DMake(40.477398, -74.259087)

let filter = GMSAutocompleteFilter()
filter.locationBias = GMSPlaceRectangularLocationOption(high, low)

Objective-C

CLLocationCoordinate2D high = CLLocationCoordinate2DMake(40.477398, -74.259087);
CLLocationCoordinate2D low = CLLocationCoordinate2DMake(440.921628, -73.700051);

GMSAutocompleteFilter *filter = [[GMSAutocompleteFilter alloc] init];
filter.locationBias = GMSPlaceRectangularLocationOption(high, low);

GooglePlacesSwift

let northEast = CLLocationCoordinate2DMake(40.477398, -74.259087)
let southWest = CLLocationCoordinate2DMake(40.921628, -73.700051)

let filter = AutocompleteFilter(coordinateRegionBias: bias)
  

nguồn gốc

Điểm gốc để tính khoảng cách theo đường thẳng đến điểm đến (được trả về dưới dạng distanceMeters). Nếu giá trị này bị bỏ qua, khoảng cách theo đường thẳng sẽ không được trả về. Phải được chỉ định là vĩ độ và kinh độ:

Swift

let filter = GMSAutocompleteFilter()
filter.origin =  CLLocation(latitude: 37.395804, longitude: -122.077023)
 

Objective-C

GMSAutocompleteFilter *filter = [[GMSAutocompleteFilter alloc] init];

filter.origin = [[CLLocation alloc] initWithLatitude:37.395804 longitude: -122.077023];

GooglePlacesSwift

let filter = AutocompleteFilter(origin: CLLocation(latitude: 37.395804, longitude: -122.077023))
  

regionCode

Mã khu vực dùng để định dạng phản hồi, được chỉ định là ccTLD ("cấp cao nhất") miền") 2 ký tự. Hầu hết các mã ccTLD (miền cấp cao nhất theo mã quốc gia) đều giống với mã ISO 3166-1, trong đó một số ngoại lệ đáng chú ý. Ví dụ: ccTLD (miền cấp cao nhất theo mã quốc gia) của Vương quốc Anh là "uk" (.co.uk) trong khi mã ISO 3166-1 của trang web là "gb" (về mặt kỹ thuật cho thực thể " Vương quốc Anh và Bắc Ireland").

Nếu bạn chỉ định mã vùng không hợp lệ, API sẽ trả về INVALID_ARGUMENT . Tuỳ theo luật hiện hành, thông số này có thể ảnh hưởng đến kết quả.

sessionToken

Mã thông báo phiên là các chuỗi do người dùng tạo để theo dõi Lệnh gọi Tự động hoàn thành (Mới) dưới dạng "phiên". Tính năng Tự động hoàn thành (Mới) sử dụng mã thông báo phiên để nhóm các giai đoạn truy vấn và lựa chọn của người dùng tự động hoàn thành tìm kiếm thành một phiên riêng biệt cho mục đích thanh toán. Để biết thêm thông tin, hãy xem Phiên mã thông báo.

Ví dụ về tính năng Tự động hoàn thành (Mới)

Sử dụng vị trí Hạn chế và vị tríBias

Tự động hoàn thành (Mới) sử dụng xu hướng IP theo mặc định là kiểm soát khu vực tìm kiếm. Với xu hướng IP, API sử dụng địa chỉ IP của làm sai lệch kết quả. Bạn có thể tuỳ ý sử dụng locationRestriction hoặc locationBias (nhưng không phải cả hai) để chỉ định một khu vực để tìm kiếm.

Giới hạn vị trí chỉ định khu vực cần tìm kiếm. Kết quả nằm ngoài phạm vi được chỉ định sẽ không được trả về. Ví dụ sau đây sử dụng quy tắc hạn chế về vị trí để giới hạn yêu cầu hạn chế vị trí hình tròn có bán kính 5000 mét ở giữa tại San Francisco:

Swift

let token = GMSAutocompleteSessionToken()

let center = CLLocationCoordinate2DMake(37.775061, -122.419400)
let radius = 5000.0

let filter = GMSAutocompleteFilter()
filter.locationRestriction = GMSPlaceCircularLocationOption(center, radius)
    
let request = GMSAutocompleteRequest(query:"Piz")
request.filter = filter
request.sessionToken = token

GMSPlacesClient.shared().fetchAutocompleteSuggestions(from: request, callback: { ( results, error ) in
      if let error = error {
        print("Autocomplete error: \(error)")
        return
      }
      if let autocompleteResults = results {
        for result in autocompleteResults {
          print("Result \(String(describing: result.placeSuggestion?.placeID)) with \(String(describing: result.placeSuggestion?.attributedFullText))")
        }
      }
    })

Objective-C


CLLocationCoordinate2D center = CLLocationCoordinate2DMake(37.775061, -122.419400);
radius = 5000.0;

GMSAutocompleteFilter *filter = [[GMSAutocompleteFilter alloc] init];
filter.locationRestriction = GMSPlaceCircularLocationOption(center, radius);
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.
    }
  }
}];

GooglePlacesSwift

let center = (37.775061, -122.419400)
let radius = 5000.0
let restriction = CircularCoordinateRegion(center: center, radius: radius)
let filter = AutocompleteFilter(coordinateRegionRestriction: restriction)
let token = AutocompleteSessionToken()

let autocompleteRequest = AutocompleteRequest(query: "Sicilian piz", sessionToken: token, filter: filter)
switch await placesClient.fetchAutocompleteSuggestions(with: autocompleteRequest) {
case .success(let autocompleteSuggestions):
  for suggestion in autocompleteSuggestions {
    switch suggestion {
    case .place:
      // Show place suggestion data.
    }
  }
case .failure(let placesError):
  // Handle error.
}
  

Với thiên vị về vị trí, vị trí được coi là một thiên kiến, có nghĩa là các kết quả xung quanh vị trí được chỉ định có thể được trả về, bao gồm cả kết quả nằm ngoài phạm vi . Ví dụ tiếp theo thay đổi yêu cầu trước đó để sử dụng tính năng sai lệch vị trí:

Swift

let token = GMSAutocompleteSessionToken()

let center = CLLocationCoordinate2DMake(37.775061, -122.419400)
let radius = 5000.0

let filter = GMSAutocompleteFilter()
filter.locationBias = GMSPlaceCircularLocationOption(center, radius)
    
let request = GMSAutocompleteRequest(query:"Piz")
request.filter = filter
request.sessionToken = token

GMSPlacesClient.shared().fetchAutocompleteSuggestions(from: request, callback: { ( results, error ) in
      if let error = error {
        print("Autocomplete error: \(error)")
        return
      }
      if let autocompleteResults = results {
        for result in autocompleteResults {
          print("Result \(String(describing: result.placeSuggestion?.placeID)) with \(String(describing: result.placeSuggestion?.attributedFullText))")
        }
      }
    })

Objective-C

CLLocationCoordinate2D center = CLLocationCoordinate2DMake(37.775061, -122.419400);
radius = 5000.0;

GMSAutocompleteFilter *filter = [[GMSAutocompleteFilter alloc] init];
filter.locationBias = GMSPlaceCircularLocationOption(center, radius);
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.
    }
  }
}];

GooglePlacesSwift

let center = (37.775061, -122.419400)
let radius = 5000.0
let bias = CircularCoordinateRegion(center: center, radius: radius)
let filter = AutocompleteFilter(coordinateRegionBias: bias)
let token = AutocompleteSessionToken()

let autocompleteRequest = AutocompleteRequest(query: "Sicilian piz", sessionToken: token, filter: filter)
switch await placesClient.fetchAutocompleteSuggestions(with: autocompleteRequest) {
case .success(let autocompleteSuggestions):
  for suggestion in autocompleteSuggestions {
    switch suggestion {
    case .place:
      // Show place suggestion data.
    }
  }
case .failure(let placesError):
  // Handle error.
}
  

Các hình thức sử dụng

Sử dụng tham số loại để hạn chế kết quả từ một yêu cầu là thuộc một như được liệt kê trong Bảng ABảng T. Bạn có thể chỉ định một gồm tối đa 5 giá trị. Nếu bỏ qua, hàm sẽ trả về tất cả các loại.

Ví dụ sau đây chỉ định chuỗi truy vấn "Bóng đá" và sử dụng các loại để giới hạn kết quả cho các cơ sở thuộc loại "sporting_goods_store":

Swift

let token = GMSAutocompleteSessionToken()

let filter = GMSAutocompleteFilter()
filter.types = ["sporting_goods_store"]
    
let request = GMSAutocompleteRequest(query:"Soccer")
request.filter = filter
request.sessionToken = token

GMSPlacesClient.shared().fetchAutocompleteSuggestions(from: request, callback: { ( results, error ) in
      if let error = error {
        print("Autocomplete error: \(error)")
        return
      }
      if let autocompleteResults = results {
        for result in autocompleteResults {
          print("Result \(String(describing: result.placeSuggestion?.placeID)) with \(String(describing: result.placeSuggestion?.attributedFullText))")
        }
      }
    })

Objective-C

GMSAutocompleteFilter *filter = [[GMSAutocompleteFilter alloc] init];
filter.types = @[ "sporting_goods_store" ];
GMSAutocompleteRequest *request = [[GMSAutocompleteRequest alloc] initWithQuery:@"Soccer"];
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.
    }
  }
}];

GooglePlacesSwift

let filter = AutocompleteFilter(types: [ PlaceType(rawValue: "sporting_goods_store") ])
let token = AutocompleteSessionToken()

let autocompleteRequest = AutocompleteRequest(query: "Soccer", sessionToken: token, filter: filter)
switch await placesClient.fetchAutocompleteSuggestions(with: autocompleteRequest) {
case .success(let autocompleteSuggestions):
  for suggestion in autocompleteSuggestions {
    switch suggestion {
    case .place:
      // Show place suggestion data.
    }
  }
case .failure(let placesError):
  // Handle error.
}
    

Sử dụng nguồn gốc

Khi bạn đưa tham số origin vào yêu cầu, được chỉ định là vĩ độ và kinh độ, API sẽ bao gồm khoảng cách theo đường thẳng từ điểm gốc đến đích đến trong phản hồi. Phản hồi trả về khoảng cách là distanceMeters.

Ví dụ sau đặt điểm khởi hành là trung tâm của San Francisco:

Swift

let token = GMSAutocompleteSessionToken()

let origin = CLLocation(latitude: 37.7749, longitude: -122.4194)

let filter = GMSAutocompleteFilter()

filter.origin =  origin
    
let request = GMSAutocompleteRequest(query:"Amoeba")
request.filter = filter
request.sessionToken = token

GMSPlacesClient.shared().fetchAutocompleteSuggestions(from: request, callback: { ( results, error ) in
      if let error = error {
        print("Autocomplete error: \(error)")
        return
      }
      if let autocompleteResults = results {
        for result in autocompleteResults {
          print("Result \(String(describing: result.placeSuggestion?.placeID)) with \(String(describing: result.placeSuggestion?.attributedFullText)) and distance: \(String(describing: result.placeSuggestion?.distanceMeters))")
        }
      }
    })

Objective-C


GMSAutocompleteFilter *filter = [[GMSAutocompleteFilter alloc] init];
filter.origin = [[CLLocation alloc] initWithLatitude:37.395804 longitude:-122.077023];
GMSAutocompleteRequest *request = [[GMSAutocompleteRequest alloc] initWithQuery:@"Amoeba"];
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.
      }
    }
}];

GooglePlacesSwift

let filter = AutocompleteFilter(origin: CLLocation(latitude: 37.7749, longitude: -122.4194))
let token = AutocompleteSessionToken()

let autocompleteRequest = AutocompleteRequest(query: "Amoeba", sessionToken: token, filter: filter)
switch await placesClient.fetchAutocompleteSuggestions(with: autocompleteRequest) {
case .success(let autocompleteSuggestions):
  for suggestion in autocompleteSuggestions {
    switch suggestion {
    case .place:
      // Show place suggestion data.
    }
  }
case .failure(let placesError):
  // Handle error.
}
  

Phân bổ

Bạn có thể dùng tính năng Tự động hoàn thành (Mới) mà không cần bản đồ. Nếu bạn hiển thị một bản đồ, đó phải là bản đồ của Google. Khi bạn hiển thị các đề xuất từ dịch vụ Tự động hoàn thành (Mới) không có bản đồ, bạn phải bao gồm biểu trưng của Google được hiển thị cùng dòng với cụm từ tìm kiếm trường/kết quả. Để biết thêm thông tin, hãy xem phần Hiển thị biểu trưng Google và thuộc tính.