プレイス サービスと Maps SDK for Android と Geocoding API を使用して地域を検索する 場所の詳細情報が表示されます。プレイス サービス Geocoding API は、画像データを取得する強力かつ安定した 使用します。すでにプレイス ID を使用している場合、それらの ID を データドリブンなスタイル設定も行いました。
プレイス サービスとジオコーディングを Maps SDK for Android アプリでは、以下の方法を利用できます。
- Places SDK for Android に関する情報を返すメソッドを含む Android ライブラリです。 できます。
- Places API は、HTTP リクエストを使用して場所に関する情報を返します。
- Geocoder クラス ユーザー入力から動的にジオコーディングとリバース ジオコーディングを実行できます。
- Geocoding API を使用すると、既知の住所を静的にジオコーディングできます。
プレイス サービスを使用する
テキスト検索(新版)を使ってプレイス ID を検索する
テキスト検索(新版)を使用できます
Places API の REST API で、地域を含むプレイス ID を取得
データを指定するには、フィールド マスクに places.id
を指定します。
テキスト検索(新版)でプレイス ID をリクエストする場合、料金が発生するのは
無料で利用できます。詳細
たとえば、カリフォルニア州トリニダード市のプレイス ID を取得するには、次のようにします。 API 呼び出し:
curl -X POST -d '{ "textQuery" : "Trinidad, CA" }' \ -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \ -H 'X-Goog-FieldMask: places.id' \ 'https://places.googleapis.com/v1/places:searchText'
Places Autocomplete を使用して地域を検索する
Places Autocomplete
サービスを使用すると、
地域を検索することもできます。Places Autocomplete サービスを
地域のみを返す場合は、
AutocompleteSupportFragment.setTypesFilter(List)
タイプフィルタを PlaceTypes.REGIONS
に設定します。
地域の Place Details を取得する
Place Details サービスは、Places SDK for Android で地域のデータを返し、 とても便利です。たとえば、次のようなことができます。
- 地名に基づいて境界線のプレイス ID を検索する。
- 境界線にズームするビューポートを取得する。
- 境界線の対象物タイプ(
locality
など)を取得する。 - フォーマット済み住所を取得する。これは「Place Name, State, Country」に解決されます。 米国地域(例: 「Ottumwa, IA, USA」)。
- 写真など、その他の便利なデータを取得する。
Geocoding API を使用する
Geocoding API を使用すると、 住所を緯度と経度の座標とプレイス ID に変換するか、 緯度と経度の座標またはプレイス ID を住所に変換します。次のような使用方法は、境界線用データドリブン スタイル設定との組み合わせに最適です。
- ジオコーディングを使用して地域のビューポートを取得する。
- ジオコーディングの呼び出しにコンポーネントのフィルタリングを適用して、行政区域 1~4、地域区分、または郵便番号のプレイス ID を取得する。
- リバース ジオコーディングを使用して緯度と経度でプレイス ID を取得する 特定の場所のすべてのコンポーネントのプレイス ID を返すことも あります。
次の例では、URL エスケープされたアドレスを使用して、 Geocoding API:
https://maps.googleapis.com/maps/api/geocode/json?address=1600%20Amphitheatre%20Pkwy%20Mountain%20View%20CA&key=YOUR_API_KEY
リバース ジオコーディングを使用できます。 して、場所 ID を見つけます。次の Geocoding の例は、 サービス関数は、指定した場所のすべての住所コンポーネントのプレイス ID を 緯度と経度の座標:
https://maps.googleapis.com/maps/api/geocode/json?latlng=41.864182,-87.676930&key=YOUR_API_KEY
コンポーネント フィルタリングでリバース ジオコーディングを使用して住所コンポーネントを取得する は、指定したロケーションで次のタイプの 1 つ以上に対して適用されます。
administrativeArea
country
locality
postalCode
次の例の関数では、ジオコーディング サービスを使用し、リバース ジオコーディングでコンポーネントの制限を追加して、指定された場所の locality
タイプの住所コンポーネントのみをすべて取得します。
https://maps.googleapis.com/maps/api/geocode/json?latlng=41.864182,-87.676930&result_type=locality&key=YOUR_API_KEY