SDK バージョンの選択

アプリで使用できる Places SDK for Android の機能は、アプリの構成で指定した SDK バージョン番号(3.5.0 など)、API キーで有効にする API、アプリの初期化方法の組み合わせによって決まります。このガイドでは、バージョンの違いと、アプリで有効にするバージョンを選択する方法について説明します。

SDK バージョン番号

アプリレベルの build.gradle ファイルで指定する SDK のバージョン番号によって、特定のリリースで追加された機能にアプリがアクセスできるかどうかが決まります。たとえば、Autocomplete(新)は SDK バージョン 3.5.0 以降でのみ使用できます。

各 SDK バージョンでの変更点について詳しくは、Places SDK for Android リリースノートをご覧ください。

Places SDK for Android の Places API バージョン

SDK のバージョン番号を指定するだけでなく、SDK が呼び出す Places API サービス(Places API または Places API(新版))も Google Cloud コンソールで選択する必要があります。選択した API サービスでは、SDK のバージョン番号とともに、予測入力や予測入力(新版)など、アプリで使用できる特定の機能のバージョンが決まります。SDK のバージョン番号は 1 つのみ指定できますが、1 つの API キーで Places API と Places API(新版)の両方を同時に有効にして、アプリで SDK の初期化に使用するメソッドで SDK が呼び出すサービスを選択できます。ただし、通常は Places API(新版)を有効にして、アプリで(新版)バージョンの SDK 機能を使用することをおすすめします。

SDK バージョンと API サービスを選択する

アプリで使用できる SDK の機能を選択するには、次の手順を行います。

  1. Google Cloud プロジェクトで、Places API、Places API(新版)のいずれか、または両方を有効にします。詳細については、API を有効にするをご覧ください。
  2. API キーの制限で、Places API、Places API(新版)のいずれか、または両方を有効にします。詳細については、API キーの制限をご覧ください。
  3. アプリレベルの build.gradle ファイルで、バージョン番号を指定します。詳細については、インストールをご覧ください。

  4. Places.initializeWithNewPlacesApiEnabled() メソッドまたは Places.initialize() メソッドを呼び出して、アプリを初期化します。

Places API サービスの選択について詳しくは、Google Cloud プロジェクトをセットアップするをご覧ください。

各バージョンで使用できる SDK の機能

次の表に、各 SDK 機能に必要な SDK と API のバージョンを示します。

特徴 API キーで Places API が有効化されました 初期化方法 最小 SDK バージョン
予測入力(新) Places API(新規) initializeWithNewPlacesApiEnabled() 3.5.0
Place Details(新規) Places API(新規) initializeWithNewPlacesApiEnabled() 3.3.0
Nearby Search(新版) Places API(新規) initializeWithNewPlacesApiEnabled() 3.5.0
Place Photos(新規) Places API(新規) initializeWithNewPlacesApiEnabled() 3.4.0
テキスト検索(新版) Places API(新規) initializeWithNewPlacesApiEnabled() 3.3.0
Place Autocomplete Places API initialize()
Current Place Places API initialize()
Place Details Places API initialize()
Place Photos Places API initialize()

有効にするバージョンを選択する際の考慮事項

どのバージョンを選択するかを決定する際は、次の点を考慮してください。

  • Places SDK for Android を初めて使用するお客様は、Places API(新版)と新しい SDK から始めます。
  • 既存のお客様の場合は、引き続き既存の SDK をご利用いただけます。ただし、Places SDK for Android(新版)のパフォーマンス向上と機能強化を利用するには、新しい SDK を使用する必要があります。新しい SDK に移行する場合は移行する必要はありません。SDK バージョンと API サービスを選択するの手順に沿って行ってください。
  • Places SDK for Android(新版)では、バージョン 3.5.0 以降でセッション トークンを使用できます。詳細については、セッション トークンをご覧ください。
  • Place Autocomplete ウィジェットを使用して行われる呼び出しでは、Place Autocomplete(新版)ではなく、常に Place Autocomplete が呼び出されます。ウィジェットの呼び出しは、初期化メソッドの影響を受けません。
  • Place Photos(新版)はビットマップ画像の URI のみを返すのに対し、プレイスフォトはビットマップ画像のみを返します。
  • Current Place は Places SDK for Android でのみ利用できます。Places SDK for Android(新版)では使用できません。

Places SDK for Android の機能強化(新規)

このセクションでは、Places SDK for Android(新規)に追加された主な機能について説明します。

Google Cloud の標準プラットフォームに実装

Places SDK for Android(新版)は、Google Cloud のサービス インフラストラクチャに実装されています。この実装により、より安全で信頼性の高いプラットフォームを実現できます。 この標準の設計により、SDK 全体にある程度の一貫性がもたらされ、Places SDK for Android(新版)での開発効率が向上します。

パフォーマンスの向上

Places SDK for Android(新版)ではパフォーマンスが向上しており、既存の SDK を使用しているアプリを置き換える価値があります。

新しい機能と特長

Places SDK for Android(新版)には、最新バージョンの SDK 機能がすべて含まれています。

新しいテキスト検索サービス

テキスト検索(新版)は、「渋谷 ピザショップ」「表参道 靴店」「123 番地」といった文字列に対して、場所のセットについての情報を返します。テキスト文字列と、設定されている位置情報バイアスに一致する場所のリストがレスポンスとして返されます。

Placed Details(新版)と Place Photos(新版)に新しいレスポンス データを追加

  • Place Details(新)のレスポンス Place オブジェクトに新しい Review クラスが追加されました。Place クラスには、このフィールドをサポートする新しい getReviews() メソッドが含まれています。getReviews() を呼び出すと、場所について最大 5 件のクチコミが返されます。

  • Place Photo(新規)により、AuthorAttributionsPhotoMetadata クラスに追加されました。AuthorAttributions には、AuthorAttribution オブジェクトの List が含まれています。

新しい URI レスポンスが Place Photos に追加されました(New)

Place Photo(新)を使用して、画像ビットマップの URI を返すことができるようになりました。これまでは、画像のビットマップ自体を返すことしかできませんでした。

シンプルな料金体系

Places SDK for Android(新版)では料金体系が簡素化され、使用したデータに対してのみ料金が発生します。簡素化された料金設定は、フィールド リスト(フィールド マスクとも呼ばれます)を使用して実装されます。

Place Details と Text Search では、フィールド リストを使用して、レスポンスで返されるフィールドのリストを制御します。リクエストしたデータに対してのみ課金されます。フィールド リストの使用は、不要なデータをリクエストしないようにするための優れた設計プラクティスです。これにより、不要な処理時間と課金を回避できます。

両方の SDK の料金の詳細については、使用量と請求額をご覧ください。

拡張された場所のタイプ

新しい SDK では、次の表に示す場所タイプが追加されています。これらのタイプは Place Details と Text Search のレスポンスの一部として返されます。Text Search の検索でも、これらの新しい型や既存の型を使用できます。新しいタイプは表 A に含まれています。

タイプ
american_restaurant discount_store ice_cream_shop sandwich_shop
amusement_center dog_park indian_restaurant school_district
athletic_field electric_vehicle_charging_station indonesian_restaurant seafood_restaurant
auto_parts_store event_venue italian_restaurant ski_resort
banquet_hall extended_stay_hotel japanese_restaurant spanish_restaurant
barbecue_restaurant farm korean_restaurant sporting_goods_store
barber_shop ファームステイ lebanese_restaurant sports_club
bed_and_breakfast fast_food_restaurant Marina sports_complex
brazilian_restaurant ferry_terminal 短縮 steak_house
breakfast_restaurant fitness_center medical_lab sushi_restaurant
brunch_restaurant french_restaurant mediterranean_restaurant swimming_pool
bus_stop gift_shop mexican_restaurant 仕立てる
camping_cabin golf_course middle_eastern_restaurant telecommunications_service_provider
cell_phone_store greek_restaurant モーテル thai_restaurant
child_care_agency grocery_store national_park transit_depot
chinese_restaurant guest_house park_and_ride truck_stop
coffee_shop hair_salon performing_arts_theater turkish_restaurant
community_center hamburger_restaurant pizza_restaurant vegan_restaurant
コンサルタント ヘリポート playground vegetarian_restaurant
convention_center hiking_area 未就学児向け vietnamese_restaurant
コテージ historical_landmark private_guest_room visitor_center
courier_service home_improvement_store ramen_restaurant wedding_venue
cultural_center ホステル resort_hotel 卸売業者
dental_clinic hotel rest_stop

これらの新しいタイプに加えて、Places API(新版)では次のタイプも Places API のテーブル 2 から Places API(新版)のテーブル A に移動しました。つまり、以下の型を検索の一部として使用できるようになりました。

  • country
  • administrative_area_level_1
  • administrative_area_level_2
  • postal_code
  • locality