Place Details(新規)

プラットフォームを選択: Android iOS JavaScript ウェブサービス

Places SDK for iOS(新版)はアプリに豊富な情報を提供 場所に関する情報(場所の名前や住所、 緯度と経度の座標で指定された場所、場所のタイプ( ナイトクラブ、ペットショップ、美術館など)。特定の期間にこの情報にアクセスするには、 固定の識別子であるプレイス ID を使用して 場所を特定します。

Place Details を取得する

GMSPlace クラスには特定の場所に関する情報が格納されています。これには、 場所データ フィールド(新)。手に入れよう: GMSPlace 呼び出すことによって、 GMSPlacesClient fetchPlaceWithRequest:, GMSFetchPlaceRequest オブジェクトと 型のコールバック メソッド GMSPlaceResultCallback

GMSFetchPlaceRequest オブジェクトでは以下を指定します。

  • (必須)プレイス ID(Google プレイス内の場所の一意の識別子) Google マップ上で実行できます
  • (必須)GMSPlace オブジェクトで返すフィールドのリスト。 フィールド マスクGMSPlaceProperty。 フィールド リストで 1 つ以上のフィールドを指定しない場合、またはフィールドを省略した場合 その場合、呼び出しはエラーを返します。
  • (省略可)レスポンスのフォーマットに使用される地域コード。
  • (省略可)予測入力(新規)セッションを終了するために使用されるセッション トークン。

Place Details リクエストを行う

この例では、次のパラメータを渡して ID で場所を取得しています。

  • ChIJV4k8_9UodTERU5KXbkYpSYs のプレイス ID。
  • 場所の名前とウェブサイトの URL を返すことを指定するフィールド リスト。
  • GMSPlaceResultCallback 結果を処理します

API は指定されたコールバック メソッドを呼び出し、 GMSPlace 渡されます。場所が見つからない場合、プレイス オブジェクトは nil になります。

Swift

// A hotel in Saigon with an attribution.
let placeID = "ChIJV4k8_9UodTERU5KXbkYpSYs"

// Specify the place data types to return.
let myProperties = [GMSPlaceProperty.name, GMSPlaceProperty.website].map {$0.rawValue}

// Create the GMSFetchPlaceRequest object.
let fetchPlaceRequest = GMSFetchPlaceRequest(placeID: placeID, placeProperties: myProperties, sessionToken: nil)

client.fetchPlace(with: fetchPlaceRequest, callback: {
  (place: GMSPlace?, error: Error?) in
  guard let place, error == nil else { return }
  print("Place found: \(String(describing: place.name))")
})

Objective-C

// A hotel in Saigon with an attribution.
NSString *placeID = @"ChIJV4k8_9UodTERU5KXbkYpSYs";

// Specify the place data types to return.
NSArray<NSString *> *myProperties = @[GMSPlacePropertyName, GMSPlacePropertyWebsite];

// Create the GMSFetchPlaceRequest object.
GMSFetchPlaceRequest *fetchPlaceRequest = [[GMSFetchPlaceRequest alloc] initWithPlaceID:placeID placeProperties: myProperties sessionToken:nil];

[placesClient fetchPlaceWithRequest: fetchPlaceRequest callback: ^(GMSPlace *_Nullable place, NSError *_Nullable error) {
    if (error != nil) {
      NSLog(@"An error occurred %@", [error localizedDescription]);
      return;
    } else {
    NSLog(@"Place Found: %@", place.name);
    NSLog(@"The place URL: %@", place.website);
  }
}];

GooglePlacesSwift

// A hotel in Saigon with an attribution.
let placeID = "ChIJV4k8_9UodTERU5KXbkYpSYs"
let fetchPlaceRequest = FetchPlaceRequest(
  placeID: placeID,
  placeProperties: [.name, .website]
)
switch await placesClient.fetchPlace(with: fetchPlaceRequest) {
case .success(let place):
  // Handle place
case .failure(let placesError):
  // Handle error
}

Place Details レスポンス

Place Details は、 場所の詳細を含む GMSPlace オブジェクト。GMSPlace オブジェクトには、フィールド リストで指定されたフィールドのみが入力されます。

データ フィールドのほか、GMSPlace オブジェクトの 次のメンバー関数が含まれます。

  • <ph type="x-smartling-placeholder"></ph> isOpen は、ある場所が所定の時間に営業しているかどうかを計算します。
  • isOpenAtDate 特定の日付に営業しているかどうかを計算します。

必須パラメータ

GMSFetchPlaceRequest オブジェクトを使用して、必須パラメータを指定します。

プレイス ID

Places SDK for iOS で使用されるプレイス ID は、 Places API(Places SDK for Android)で使用されているものと同じ識別子 使用できます。1 つのプレイス ID が参照できる場所は 1 つのみですが、1 つの場所に複数の場所を指定できます 組み合わせることもできます

状況によっては、プレイスが新しいプレイス ID を取得することがあります。 たとえば、お店やサービスが新しい場所に移動するケースが考えられます。

プレイス ID を指定して場所をリクエストすると、 レスポンスでは常に同じ場所が返されます(その場所が あります)。ただし、レスポンスには、「.」で始まるプレイス ID が含まれる場合があります。 リクエスト内のものとは異なります

フィールド リスト

Place Details をリクエストする場合は、リクエストするデータを指定する必要があります。 GMSPlace オブジェクトでフィールド マスクとして返されます。フィールド マスクを定義するには、 値の配列を渡します。 GMSPlaceProperty GMSFetchPlaceRequest オブジェクトに追加します。 フィールド マスキングは、不要なデータをリクエストしないようにするための優れた設計プラクティスです。 不要な処理時間と料金の請求を回避できます

次のフィールドを 1 つ以上指定します。

  • 以下のフィールドで Place Details(ID のみ)SKU がトリガーされます。

    GMSPlacePropertyPlaceIDGMSPlacePropertyNameGMSPlacePropertyPhotos

  • 次のフィールドで Place Details(場所のみ)SKU がトリガーされます。

    GMSPlacePropertyAddressComponents, GMSPlacePropertyFormattedAddress, GMSPlacePropertyCoordinate, GMSPlacePropertyPlusCode, GMSPlacePropertyTypes, GMSPlacePropertyViewport

  • 以下のフィールドで Place Details(Basic)SKU がトリガーされます。

    GMSPlacePropertyBusinessStatus, GMSPlacePropertyIconBackgroundColor, GMSPlacePropertyIconImageURL, GMSPlacePropertyUTCOffsetMinutes, GMSPlacePropertyWheelchairAccessibleEntrance

  • 以下のフィールドで Place Details(Advanced)SKU がトリガーされます。

    GMSPlacePropertyCurrentOpeningHours, GMSPlacePropertySecondaryOpeningHours, GMSPlacePropertyPhoneNumber, GMSPlacePropertyPriceLevel, GMSPlacePropertyRating, GMSPlacePropertyOpeningHours, GMSPlacePropertyUserRatingsTotal, GMSPlacePropertyWebsite

  • 以下のフィールドで Place Details(Preferred)SKU がトリガーされます。

    GMSPlacePropertyCurbsidePickup, GMSPlacePropertyDelivery, GMSPlacePropertyDineIn, GMSPlacePropertyEditorialSummary, GMSPlacePropertyReservable, GMSPlacePropertyReviews, GMSPlacePropertyServesBeer, GMSPlacePropertyServesBreakfast, GMSPlacePropertyServesBrunch, GMSPlacePropertyServesDinner, GMSPlacePropertyServesLunch, GMSPlacePropertyServesVegetarianFood, GMSPlacePropertyServesWine, GMSPlacePropertyTakeout

次の例では、2 つのテーブルを含む フィールド値 リクエストによって返される GMSPlace オブジェクトに name フィールドと placeID フィールド:

Swift

// Specify the place data types to return.
let fields: [GMSPlaceProperty] = [.placeID, .name]
  

Objective-C

// Specify the place data types to return.
NSArray<GMSPlaceProperty *> *fields = @[GMSPlacePropertyPlaceID, GMSPlacePropertyName];
  

GooglePlacesSwift

// Specify the place data types to return.
let fields: [PlaceProperty] = [.placeID, .displayName]
    

オプション パラメータ

GMSFetchPlaceRequest オブジェクトを使用して、オプションのパラメータを指定します。

regionCode

レスポンスのフォーマットに使用される地域コード。 <ph type="x-smartling-placeholder"></ph> 2 文字の CLDR コードの値。このパラメータはバイアス効果をもたらすことも 表示されます。デフォルト値はありません。

レスポンスの住所フィールドの国名が 地域コードは、住所から省略されます。

ほとんどの CLDR コードは ISO 3166-1 コードと同一です。 いくつか例外がありますたとえば、英国の ccTLD は 「uk」(.co.uk)、ISO 3166-1 コードは「gb」(技術的には、 「グレート ブリテンおよび北アイルランド連合王国」という当事者である必要があります)。 このパラメータは、適用される法律に基づき、結果に影響する場合があります。

sessionToken

セッション トークンは、予測入力を追跡するユーザー生成文字列です。 (新規)通話を「セッション」と呼びます。予測入力(新版)ではセッション トークンを使用して ユーザーの予測入力検索のクエリと場所選択のフェーズを個別のセッションにグループ化する 請求に使用されます。セッション トークンが Place Details に渡される(新) 。詳細については、次をご覧ください: セッション トークン

アプリに属性を表示する

以下から取得した情報をアプリが表示するタイミング GMSPlacesClient 必要な帰属情報も表示する必要があります。

たとえば、GMSPlacesClient オブジェクトの reviews プロパティは、 最大 5 つの配列を含む GMSPlaceReview 説明します。各 GMSPlaceReview オブジェクトには、帰属表示と著者帰属を含めることができます。 アプリにレビューを表示する場合は、帰属情報または投稿者も表示する必要があります。 できます。

詳細については、このモジュールのコースリソースに アトリビューション