Vous pouvez demander plus de détails sur un établissement ou un point de d'intérêt en utilisant sa position ID et à créer un requête Place Details (New). Place Details (New) renvoie des informations plus complètes des informations sur le lieu indiqué, telles que son adresse complète, son numéro de la note et les avis des visiteurs.
Il existe de nombreuses façons d'obtenir un ID de lieu. Vous pouvez utiliser :
Requêtes Place Details (New)
Vous pouvez demander des informations sur le lieu en appelant
PlacesClient.fetchPlace()
et en transmettant
FetchPlaceRequest
contenant un identifiant de lieu et une liste de champs, ainsi que
comme n'importe quel paramètre facultatif:
// Define a place ID.
final String placeId = "INSERT_PLACE_ID_HERE";
// Specify the list of fields to return.
final List<Place.Field> placeFields = Arrays.asList("INSERT_PLACE_FIELDS_HERE");
// Construct a request object, passing the place ID and field list.
final FetchPlaceRequest request = FetchPlaceRequest.newInstance(placeId, placeFields);
// Pass the request object and make the request
Task<FetchPlaceResponse> placeTask = placesClient.fetchPlace(request);
<ph type="x-smartling-placeholder">
Réponses Place Details (New)
Place Details (New) renvoie des données sous la forme d'un
Place
, qui inclut uniquement les champs demandés à l'aide de la propriété
liste. Les résultats des données de lieu ne peuvent pas être vides : seuls les résultats de lieu sont disponibles.
contenant des données sont renvoyées. Par exemple, si le lieu demandé ne comporte aucune photo, le
photos ne sera pas présent dans le résultat).
Pour accéder aux champs de données, appelez la méthode
méthode.
Par exemple, pour accéder au nom du lieu, appelez getName()
.
Paramètres obligatoires
Les paramètres requis pour
FetchPlaceRequest
sont:
-
ID de lieu
Identifiant textuel qui identifie un lieu de façon unique, renvoyé par une Text Search (nouvelle version), Nearby Search (nouveau) ou Saisie semi-automatique (nouveauté) : Pour en savoir plus sur les ID de lieu, consultez les présentation des ID de lieu.
-
Liste des champs
Lorsque vous demandez un lieu, vous devez spécifier les données de lieu à renvoyer. À pour cela, transmettez une liste de valeurs
Place.Field
spécifiant les données à renvoyer. Il n'existe pas de liste par défaut a renvoyé des champs dans la réponse.Les listes de champs sont une bonne pratique à appliquer pour vous assurer de ne pas demander des données inutiles, ce qui permet d'éviter les délais de traitement et des frais de facturation.Cette liste est un élément important à prendre en compte car cela affecte le coût de chaque requête. Pour en savoir plus, consultez Utilisation et facturation.
Renseignez un ou plusieurs des champs suivants:
Les champs suivants déclenchent le SKU Place Details (IDs Only):
Place.Field.ID
,Place.Field.NAME
,Place.Field.PHOTO_METADATAS
Les champs suivants déclenchent le SKU Place Details (Location Only):
Place.Field.ADDRESS_COMPONENTS
,Place.Field.ADDRESS
,Place.Field.LAT_LNG
,Place.Field.PLUS_CODE
,Place.Field.TYPES
,Place.Field.VIEWPORT
Les champs suivants déclenchent le SKU Place Details (Basic):
Place.Field.BUSINESS_STATUS
,Place.Field.ICON_BACKGROUND_COLOR
,Place.Field.ICON_URL
,Place.Field.UTC_OFFSET
,Place.Field.WHEELCHAIR_ACCESSIBLE_ENTRANCE
Les champs suivants déclenchent le SKU Place Details (Advanced):
Place.Field.CURRENT_OPENING_HOURS
,Place.Field.SECONDARY_OPENING_HOURS
,Place.Field.PHONE_NUMBER
,Place.Field.PRICE_LEVEL
,Place.Field.RATING
,Place.Field.OPENING_HOURS
,Place.Field.USER_RATINGS_TOTAL
,Place.Field.WEBSITE_URI
Les champs suivants déclenchent le SKU Place Details (Preferred):
Place.Field.CURBSIDE_PICKUP
,Place.Field.DELIVERY
,Place.Field.DINE_IN
,Place.Field.EDITORIAL_SUMMARY
,Place.Field.RESERVABLE
,Place.Field.REVIEWS
,Place.Field.SERVES_BEER
,Place.Field.SERVES_BREAKFAST
,Place.Field.SERVES_BRUNCH
,Place.Field.SERVES_DINNER
,Place.Field.SERVES_LUNCH
,Place.Field.SERVES_VEGETARIAN_FOOD
,Place.Field.SERVES_WINE
,Place.Field.TAKEOUT
.
Paramètres facultatifs
Les paramètres facultatifs pour
FetchPlaceRequest
sont:
Code régional
Code régional utilisé pour mettre en forme la réponse, spécifié sous la forme d'une CLDR à deux caractères. Il n'existe pas de valeur par défaut.
Si le nom de pays du champ
Place.Field.ADDRESS
dans la réponse correspond auregionCode
, le code pays est omis dePlace.Field.ADDRESS
.La plupart des codes CLDR sont identiques aux codes ISO 3166-1, à quelques exceptions près. Par exemple, le ccTLD au Royaume-Uni est "uk" (.co.uk), tandis que son code ISO 3166-1 est "gb". (d'un point de vue technique, du Royaume-Uni de Grande-Bretagne et d'Irlande du Nord). Ce paramètre peut avoir un impact sur les résultats en fonction de la législation applicable.
Pour définir le paramètre de code régional, appelez la méthode
setRegionCode()
lors de la création de l'objetFetchPlaceRequest
.-
Jeton de session
Les jetons de session sont des chaînes générées par l'utilisateur qui suivent La saisie semi-automatique (nouvelle version) appelle les "sessions". La saisie semi-automatique (nouveau) utilise des jetons de session pour regrouper les phases de requête et de sélection de lieux d'une recherche avec saisie semi-automatique d'un utilisateur dans une session distincte ; à des fins de facturation. Les jetons de session sont transmis à Place Details (nouveau) qui suivent les appels de saisie semi-automatique (nouveau). Pour en savoir plus, consultez Jetons de session :
Pour définir le paramètre de jeton de session, appelez la méthode
setSessionToken()
lors de la création de l'objetFetchPlaceRequest
.
Exemple Place Details
L'exemple suivant demande les champs ID
, NAME
et ADDRESS
pour le
l'Empire State Building à New York.
// Define a place ID.
final String placeId = "ChIJaXQRs6lZwokRY6EFpJnhNNE";
// Specify the list of fields to return.
final List<Place.Field> placeFields = Arrays.asList(Place.Field.ID, Place.Field.NAME, Place.Field.ADDRESS);
// Construct a request object, passing the place ID and field list.
final FetchPlaceRequest request = FetchPlaceRequest.newInstance(placeId, placeFields);
// Pass the request object and make the request
Task<FetchPlaceResponse> placeTask = placesClient.fetchPlace(request);