SDK バージョンの選択

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

SDK バージョン番号

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

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

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

SDK バージョン番号を指定するだけでなく、Google Cloud コンソールで SDK が呼び出す Places API サービス(Places API または Places API(新規))も選択する必要があります。アプリで使用できる特定の機能のバージョン(自動入力や自動入力(新規)など)は、SDK バージョン番号と選択した API サービスによって決まります。SDK のバージョン番号は 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 バージョン
Autocomplete(新規) Places API(新規) initializeWithNewPlacesApiEnabled() 3.5.0
Place Details(新規) Places API(新規) initializeWithNewPlacesApiEnabled() 3.3.0
Nearby Search(新規) Places API(新規) initializeWithNewPlacesApiEnabled() 3.5.0
Place Photo(新規) 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 Photo (New) はビットマップ画像の URI のみを返しますが、Place Photo はビットマップ画像のみを返します。
  • 現在の場所は、Places SDK for Android でのみ使用できます。Places SDK for Android(新規)では使用できません。

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

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

Google Cloud 標準プラットフォームに実装されている

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

パフォーマンスの向上

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

新機能

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

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

テキスト検索(新版)は、「渋谷 ピザショップ」「表参道 靴店」「123 番地」といった文字列に対して、場所のセットについての情報を返します。このサービスは、テキスト文字列や場所の優先度設定と合致するプレイスのリストをレスポンスとして返します。

Place Details(新版)と Place Photos(新版)に新しいレスポンス データが追加されました

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

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

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

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
コンサルタント ヘリポート 遊び場 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 ホテル rest_stop

これらの新しいタイプに加えて、Places API (New) では、次のタイプが Places API の表 2 から Places API (New) の表 A に移動されました。つまり、検索の一部として次のタイプを使用できるようになりました。

  • country
  • administrative_area_level_1
  • administrative_area_level_2
  • postal_code
  • locality