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 comment sélectionner les versions 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, la saisie semi-automatique (nouveau) n'est disponible que dans la version 3.5.0 ou ultérieure du SDK.

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 de l'API Places que le SDK appelle dans la console Google Cloud: l'API Places ou l'API Places (nouvelle version). En plus du numéro de version du SDK, le service d'API que vous sélectionnez détermine la version de fonctionnalités spécifiques disponibles dans votre application, telles que la saisie semi-automatique ou la saisie semi-automatique (nouvelle version). Bien que vous ne puissiez spécifier qu'un seul numéro de version du SDK, vous pouvez activer simultanément l'API Places et l'API Places (nouvelle version) sur votre clé API, puis sélectionner le service appelé par le SDK via la méthode utilisée 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électionnez 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 version) ou les deux. Pour en savoir plus, consultez la page Activer les API.
  2. Dans vos restrictions de clés API, activez l'API Places, l'API Places (nouvelle version) ou les deux. Pour en savoir plus, consultez 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 (nouveauté) API Places (New) initializeWithNewPlacesApiEnabled() 3.5.0
Place Details (New) API Places (New) initializeWithNewPlacesApiEnabled() 3.3.0
Nearby Search (nouveau) API Places (New) initializeWithNewPlacesApiEnabled() 3.5.0
Place Photos (nouveauté) API Places (New) initializeWithNewPlacesApiEnabled() 3.4.0
Text Search (nouvelle version) 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 la version à utiliser, tenez compte des éléments suivants:

  • Si vous êtes un nouveau client et que vous commencez tout juste à utiliser le SDK Places pour Android, commencez par l'API Places (nouvelle version) et le nouveau SDK.
  • Si vous êtes déjà client, vous pouvez continuer à utiliser le SDK existant. Toutefois, pour profiter des améliorations de performances et des fonctionnalités du SDK Places pour Android (nouveau), vous devez utiliser le nouveau SDK. Aucune migration n'est nécessaire lorsque vous passez 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 (nouvelle version) 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).

Implémentée sur la plate-forme standard Google Cloud

Le SDK Places pour Android (nouveau) est mis en œuvre sur l'infrastructure de services sur Google Cloud. Cette implémentation offre une plate-forme plus sécurisée et plus fiable. Cette conception standard apporte un niveau de cohérence entre les SDK, ce qui améliore 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 intéressant de remplacer les applications qui utilisent le SDK existant.

Nouvelles fonctionnalités

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

Nouveau service Text Search

Text Search (nouvelle version) renvoie des informations sur un ensemble de lieux en fonction d'une chaîne, par exemple "pizza à New York", "magasin 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éfinies.

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

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

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

Nouvelle réponse 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 lui-même.

Tarification simplifiée

La tarification est simplifiée avec le SDK Places pour Android (nouveau). Ainsi, vous ne payez 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. Seules les données demandées vous sont facturées. Une liste de champs est une bonne pratique à suivre pour vous assurer de ne pas demander de données inutiles, ce qui permet d'éviter le temps de traitement et les frais facturés.

Pour obtenir des informations détaillées sur la tarification des deux SDK, consultez la page 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 (nouvelle version) a déplacé les types suivants du tableau 2 pour l'API Places vers le tableau A pour l'API Places (nouvelle version). Cela signifie que vous pouvez désormais utiliser ces types dans le cadre d'une recherche:

  • country
  • administrative_area_level_1
  • administrative_area_level_2
  • postal_code
  • locality