アプリで使用できる 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 の機能を選択するには、次の手順を行います。
- Google Cloud プロジェクトで、Places API、Places API(新版)のいずれか、または両方を有効にします。詳細については、API を有効にするをご覧ください。
- API キーの制限で、Places API、Places API(新版)のいずれか、または両方を有効にします。詳細については、API キーの制限をご覧ください。
アプリレベルの build.gradle ファイルで、バージョン番号を指定します。詳細については、インストールをご覧ください。
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(新規)により、
AuthorAttributions
がPhotoMetadata
クラスに追加されました。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