Le SDK Places pour Android est compatible avec Place Details (Legacy). Si vous connaissez le SDK Places pour Android (ancien), Place Details (New) apporte les modifications suivantes :
Utilise un nouveau modèle de tarification. Pour obtenir des informations sur les tarifs de toutes les API, consultez SDK Places pour Android (nouveau).
Vous devez initialiser votre application en appelant la méthode
Places.initializeWithNewPlacesApiEnabled()
. Pour en savoir plus sur la sélection du service Places API, consultez Configurer votre projet Google Cloud.Le masquage de champ est obligatoire. Vous devez spécifier les champs que vous souhaitez voir figurer dans la réponse. Il n'existe pas de liste par défaut des champs renvoyés. Si vous omettez cette liste, les méthodes renvoient une erreur.
Les sections suivantes décrivent d'autres modifications.
Accéder à de nouveaux types de lieux
Chaque lieu peut être associé à une ou plusieurs valeurs de type. Le SDK Places pour Android version 3.3.0 et ultérieures ajoutent de nombreuses nouvelles valeurs de type. Pour obtenir la liste complète, consultez Types de lieux étendus.
La méthode Place.getPlaceTypes()
renvoie les valeurs de type sous forme de liste de valeurs de chaîne. Les valeurs renvoyées dépendent de votre version du SDK Places pour Android :
SDK Places pour Android (nouveau) : renvoie les chaînes définies par les tableaux A et B de la page Types de lieux (nouveau), y compris tous les types de lieux ajoutés dans la version 3.3.0.
SDK Places pour Android : renvoie les énumérations définies par
Place.Types
, qui n'incluent pas les nouveaux types ajoutés dans la version 3.3.0 et ultérieures.
Accéder aux avis sur un lieu
Le SDK Places pour Android (nouveau) ajoute la classe Review
, qui contient un avis sur un lieu. L'objet Place
peut contenir jusqu'à cinq avis.
La classe Review
peut également contenir une attribution et une attribution d'auteur. Si vous affichez l'avis dans votre application, vous devez également afficher toute attribution ou attribution d'auteur. Pour en savoir plus, consultez Afficher un avis.
Pour en savoir plus, consultez la documentation sur les attributions.
Accéder au code de langue du nom du lieu
Dans le SDK Places pour Android (hérité), la méthode Place.getName()
renvoie une chaîne de texte contenant le nom d'un lieu. Pour remplir l'objet Place
avec le nom du lieu, vous devez inclure Place.Field.DISPLAY_NAME
dans la liste des champs de la requête Place Details.
L'objet Place
contient désormais le code de langue de la chaîne de nom. Pour renseigner l'objet Place
avec le code de langue, vous devez :
Incluez
Place.Field.DISPLAY_NAME
dans la liste des champs de la requête. Cette valeur configure la réponse pour inclure à la fois le nom du lieu et le code de langue dans l'objetPlace
.Appelez
PlacesClient.fetchPlace()
.PlacesClient.findCurrentPlace()
n'est pas compatible avec le champ du code de langue.Utilisez la méthode
Place.getNameLanguageCode()
pour accéder au champ du code de langue dans l'objetPlace
.
Définir le code régional
Le SDK Places pour Android (nouveau) ajoute le paramètre de requête du code régional à Place Details. Le code de région est utilisé pour mettre en forme la réponse. Il doit être spécifié sous forme de code CLDR à deux caractères. Ce paramètre peut également avoir un effet de biais sur les résultats de recherche. Il n'existe pas de valeur par défaut. Vous devez activer le nouveau SDK pour définir le code régional.
Si le nom du pays du champ d'adresse dans la réponse correspond au code de région, le code pays est omis de l'adresse.
La plupart des codes CLDR sont identiques aux codes ISO 3166-1, à quelques exceptions près. Par exemple, le ccTLD du Royaume-Uni est "uk" (.co.uk), tandis que son code ISO 3166-1 est "gb" (techniquement pour l'entité "Royaume-Uni de Grande-Bretagne et d'Irlande du Nord"). Ce paramètre peut avoir une incidence sur les résultats en fonction de la législation applicable.
Exemple de requête
Pour obtenir un exemple complet, consultez Place Details (nouveau).