Choisir la version de votre SDK

Les fonctionnalités du SDK Places pour Android disponibles dans votre application sont déterminées par une combinaison du numéro de version du SDK (par exemple, 3.5.0) que vous spécifiez dans la configuration de votre application, des API activées sur votre clé API et de la manière dont vous initialisez votre application. Ce guide explique les différences entre les versions et explique comment sélectionner celles qui sont activées dans votre application.

Numéros de version du SDK

Le numéro de version du SDK que vous spécifiez dans le fichier build.gradle au niveau de l'application détermine si votre application a accès aux fonctionnalités ajoutées dans une version particulière. Par exemple, Autocomplete (New) n'est disponible que dans le SDK version 3.5.0 ou ultérieure.

Pour en savoir plus sur les modifications apportées à chaque version du SDK, consultez les notes de version du SDK Places pour Android.

Versions de l'API Places pour le SDK Places pour Android

En plus de spécifier un numéro de version du SDK, vous devez également sélectionner le service d'API Places que le SDK appelle dans la console Google Cloud: soit l'API Places, soit l'API Places (nouvelle version). Avec le numéro de version du SDK, le service d'API que vous sélectionnez détermine la version des fonctionnalités spécifiques disponibles dans votre application, telles que la saisie semi-automatique ou la saisie semi-automatique (nouveau). Bien que vous ne puissiez spécifier qu'un seul numéro de version du SDK, vous pouvez activer à la fois l'API Places et l'API Places (New) sur votre clé API en même temps, puis sélectionner le service que le SDK appelle via la méthode que vous utilisez pour initialiser le SDK dans votre application. Toutefois, dans la plupart des cas, vous devrez activer l'API Places (nouvelle version) et utiliser les versions (nouvelles) des fonctionnalités du SDK dans votre application.

Sélectionner la version du SDK et les services d'API

Pour sélectionner les fonctionnalités du SDK disponibles dans votre application, procédez comme suit:

  1. Dans votre projet Google Cloud, activez l'API Places, l'API Places (nouvelle) ou les deux. Pour en savoir plus, consultez la section Activer les API.
  2. Dans les restrictions de vos clés API, activez l'API Places, l'API Places (nouvelle version) ou les deux. Pour en savoir plus, consultez la section Restreindre les clés API.
  3. Dans le fichier build.gradle au niveau de l'application, spécifiez un numéro de version. Pour en savoir plus, consultez la section Installation.

  4. Initialisez votre application en appelant la méthode Places.initializeWithNewPlacesApiEnabled() ou Places.initialize().

Pour en savoir plus sur la sélection du service de l'API Places, consultez Configurer votre projet Google Cloud.

Fonctionnalités du SDK disponibles dans chaque version

Le tableau suivant indique les versions du SDK et de l'API requises pour chaque fonctionnalité du SDK:

Sélection API Places activée sur la clé API Méthode d'initialisation Version minimale du SDK
Saisie semi-automatique (nouveau) API Places (New) initializeWithNewPlacesApiEnabled() 3.5.0
Place Details (Nouveau) API Places (New) initializeWithNewPlacesApiEnabled() 3.3.0
Nearby Search (nouveauté) API Places (New) initializeWithNewPlacesApiEnabled() 3.5.0
Place Photos (nouveauté) API Places (New) initializeWithNewPlacesApiEnabled() 3.4.0
Recherche de texte (nouveau) API Places (New) initializeWithNewPlacesApiEnabled() 3.3.0
Place Autocomplete API Places initialize()
Current Place API Places initialize()
Place Details API Places initialize()
Place Photos API Places initialize()

Éléments à prendre en compte pour choisir les versions à activer

Pour vous aider à choisir quelle version choisir, tenez compte des éléments suivants:

  • Si vous êtes un nouveau client et que vous faites vos premiers pas avec le SDK Places pour Android, commencez avec l'API Places (nouveauté) et le nouveau SDK.
  • Si vous êtes déjà client, vous pouvez continuer à utiliser le SDK existant. Toutefois, pour profiter des améliorations des performances et des fonctionnalités du SDK Places pour Android (nouveau), vous devez utiliser le nouveau SDK. Aucune migration n'est nécessaire pour passer au nouveau SDK. Il vous suffit de suivre les étapes de la section Sélectionner la version du SDK et les services d'API.
  • Dans le SDK Places pour Android (nouveau), les jetons de session sont disponibles à partir de la version 3.5.0. Pour en savoir plus, consultez la section Jetons de session.
  • Les appels effectués à l'aide de widgets Place Autocomplete appellent toujours Place Autocomplete, et non Place Autocomplete (New). Les appels de widget ne sont pas affectés par la méthode d'initialisation.
  • Place Photos (New) ne renvoie qu'un URI vers une image bitmap, tandis que Place Photos ne renvoie qu'une image bitmap.
  • Current Place n'est disponible que dans le SDK Places pour Android, et non dans le SDK Places pour Android (nouveau).

Améliorations apportées au SDK Places pour Android (nouveau)

Cette section présente les principales fonctionnalités ajoutées au SDK Places pour Android (nouveau).

Mise en œuvre sur la plate-forme standard Google Cloud

Le SDK Places pour Android (nouveau) est implémenté sur l'infrastructure de service de Google Cloud. Cette implémentation apporte une plate-forme plus sûre et plus fiable. Cette conception standard apporte un niveau de cohérence entre les SDK qui améliorent l'efficacité du développement avec le SDK Places pour Android (nouveau).

Performances améliorées

Le SDK Places pour Android (nouveau) offre de meilleures performances. Il est donc utile de remplacer les applications qui utilisent le SDK existant.

Nouvelles fonctionnalités

Le SDK Places pour Android (nouveau) inclut les dernières versions de toutes les fonctionnalités du SDK:

Nouveau service Text Search

Text Search (Nouveau) renvoie des informations sur un ensemble de lieux en fonction d'une chaîne (par exemple, "pizza à New York", "magasins de chaussures près d'Ottawa" ou "123 Main Street"). Le service répond avec une liste des lieux correspondant à la chaîne de texte et aux limitations de zone géographique définis.

Nouvelles données de réponse ajoutées à Placed Details (New) et Place Photos (New)

  • Place Details (New) inclut désormais la nouvelle classe Review dans l'objet Place de la réponse. La classe Place contient la nouvelle méthode getReviews() compatible avec ce champ. Appelez getReviews() pour afficher jusqu'à cinq avis sur un lieu.

  • Place Photo (Nouveau) ajoute le AuthorAttributions à la classe PhotoMetadata. AuthorAttributions contient un List d'objets AuthorAttribution.

Nouvelle réponse d'URI ajoutée à Place Photos (nouveau)

Vous pouvez maintenant utiliser Place Photo (Nouveau) pour renvoyer un URI à un bitmap d'image. Auparavant, vous ne pouviez renvoyer que le bitmap de l'image.

Tarification simplifiée

La tarification est simplifiée avec le SDK Places pour Android (nouveau) afin que vous ne payiez que pour les données que vous utilisez. La tarification simplifiée est mise en œuvre à l'aide de listes de champs, également appelées masques de champ.

Avec Place Details et Text Search, vous utilisez des listes de champs pour contrôler la liste des champs à renvoyer dans la réponse. Vous n'êtes ensuite facturé que pour les données demandées. L'utilisation d'une liste de champs est une bonne pratique à appliquer pour vous assurer de ne pas demander de données inutiles. Vous pourrez ainsi réduire le temps de traitement et les frais facturés.

Pour obtenir des informations détaillées sur la tarification des deux SDK, consultez la section Utilisation et facturation.

Types de lieux développés

Le nouveau SDK ajoute les types de lieux indiqués dans le tableau suivant. Ces types sont renvoyés dans la réponse Place Details et Text Search. Vous pouvez également utiliser ces nouveaux types et les types existants dans une recherche avec Text Search. Les nouveaux types sont inclus dans le tableau A.

Type
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 ferme korean_restaurant sporting_goods_store
barber_shop ferme lebanese_restaurant sports_club
bed_and_breakfast fast_food_restaurant Marina sports_complex
brazilian_restaurant ferry_terminal marché steak_house
breakfast_restaurant fitness_center medical_lab sushi_restaurant
brunch_restaurant french_restaurant mediterranean_restaurant swimming_pool
bus_stop gift_shop mexican_restaurant tailleur
camping_cabin golf_course middle_eastern_restaurant telecommunications_service_provider
cell_phone_store greek_restaurant motel 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
consultant héliport playground vegetarian_restaurant
convention_center hiking_area centre préscolaire vietnamese_restaurant
cottage historical_landmark private_guest_room visitor_center
courier_service home_improvement_store ramen_restaurant wedding_venue
cultural_center auberge de jeunesse resort_hotel grossiste
dental_clinic hotel rest_stop

Parallèlement à ces nouveaux types, l'API Places (New) a déplacé les types suivants du tableau 2 pour l'API Places vers le tableau A pour l'API Places (nouveau). Cela signifie que vous pouvez désormais utiliser ces types dans une recherche:

  • country
  • administrative_area_level_1
  • administrative_area_level_2
  • postal_code
  • locality