web-dev-qa-db-ja.com

Googleオートコンプリートの場所apiios sdkで国固有の結果を取得するにはどうすればよいですか?

以下のメソッドを使用して、GMSPlacesClientクラスの入力文字列のオートコンプリート結果を取得しています。

- (void)autocompleteQuery:(NSString *)query
               bounds:(GMSCoordinateBounds * GMS_NULLABLE_PTR)bounds
               filter:(GMSAutocompleteFilter * GMS_NULLABLE_PTR)filter
             callback:(GMSAutocompletePredictionsCallback)callback

複数の方法で境界を実装しようとしましたが、どれも機能しませんでした。GMSCoordinateBoundsを使用して国固有の結果を取得する標準的な方法があるのでしょうか。

11
Shrejas

GoogleオートコンプリートプレイスAPIiOS SDKを使用して、国固有の結果を取得できます。これに行くだけです リンク

let filter = GMSAutocompleteFilter()
filter.type = .Establishment
filter.country = "UK"

フィルタの国を必要な国コードに設定します。これにより、国固有の結果のみが取得されます。

これから国コードを取得できます リンク

お役に立てれば。

29
Ankahathara

あなたのグーグルプレイスAPIURLで、ただ追加してください

 &components=country:sg 
here sg = country code for singapore. Append country code as per your requirement.

国は、ISO 3166-1Alpha-2互換の国コードの2文字として渡す必要があります。参照できます さまざまな国の国コード

4
Beena

これは私のために働く

let placesClient = GMSPlacesClient()
    let filter = GMSAutocompleteFilter()
    filter.type = .Establishment
    filter.country = "SG"
    placesClient.autocompleteQuery(searchString, bounds: nil, filter: filter) { (results, error:NSError?) -> Void in
      self.resultsArray.removeAll()
      if let _ = results {
        for result in results!{
          if let res: GMSAutocompletePrediction = result {
           // your code
          }
        }
      }
    }
4
TMD

国コードの完全なリストはここにあります:
https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2

一緒に使用してください:

let filter = GMSAutocompleteFilter()
filter.country = "YOURCountryCode"
0
Kobi

IOS用のGoogleオートコンプリートPlacesAPIは、国によるフィルタリングをサポートしていないようです。 GMSCoordinateBoundsは、2つのコーナーで定義された長方形の領域に対応するnorthEastとsouthWestの境界を使用します。

Google Places API Webサービス を使用してcomponents=country:でフィルタリングする方が簡単な場合がありますcountry:の後に必要な国を指定できます

0
Verma