Règles du SDK Places pour Android

Cet article présente les exigences d'attribution pour toutes les applications développé avec le SDK Places pour Android, y compris Place Autocomplete qui fait partie de cette API. Pour en savoir plus, consultez les Conditions d'utilisation de Google Maps Platform.

Mentionner les conditions d'utilisation et règles de confidentialité

Si vous développez une application SDK Places pour Android, vous devez mettre à disposition Conditions d'utilisation d'utilisation et Confidentialité avec votre application qui respecte les consignes décrites dans votre contrat avec Google:

  • Les conditions d'utilisation et les règles de confidentialité doivent être publiques.
  • Vous devez stipuler explicitement dans les conditions d'utilisation qu'en utilisant votre application, les utilisateurs sont tenus de respecter les Conditions d'utilisation de Google.
  • Dans vos règles de confidentialité, vous devez informer les utilisateurs que vous avez recours aux API Google Maps et intégrer les Règles de confidentialité de Google pour référence.

L'emplacement recommandé pour insérer vos conditions d'utilisation et règles de confidentialité dépend de la plate-forme de votre application.

Applications mobiles

Si vous développez une application mobile, nous vous recommandons de fournir un lien vers les conditions d'utilisation et règles de confidentialité sur la page de téléchargement de votre application (sur la plate-forme concernée) et dans le menu des paramètres de l'application.

Applications Web

Si vous développez une application Web, nous vous recommandons de fournir un lien vers les conditions d'utilisation et les règles de confidentialité dans le pied de page de votre site Web.

Préchargement, mise en cache ou stockage de contenu

Les applications utilisant le SDK Places pour Android sont soumises aux conditions d'utilisation de votre Contrat avec Google. Conformément aux dispositions de votre contrat, vous ne devez précharger, indexer, stocker ni mettre en cache aucun contenu, sauf conformément aux conditions limitées énoncées dans les dispositions.

Notez que l'ID de lieu, qui permet d'identifier un lieu de façon unique, n'est pas soumis aux restrictions de mise en cache. L'identifiant de lieu est renvoyé dans le champ "place_id" dans Réponses du SDK Places pour Android. Découvrez comment enregistrer, actualiser et gérer les ID de lieu dans le guide des ID de lieu.

Afficher les résultats du SDK Places pour Android

Vous pouvez afficher les résultats du SDK Places pour Android sur une carte Google Maps ou sans carte. Si vous souhaitez afficher les résultats du SDK Places pour Android sur une carte, ces résultats doivent être affichés sur une carte Google Maps. Il est interdit d'utiliser les données du SDK Places pour Android sur une carte qui n'est pas une carte Google.

Si votre application affiche des données sur une carte Google, vous devez inclure le logo Google sans le modifier. Les applications qui affichent des données Google sur le même écran qu'une carte Google ne sont pas tenues de fournir d'autres informations d'attribution à Google.

Si votre application affiche des données sur une page ou une vue sans carte Google, vous devez accompagner ces données du logo Google. Par exemple, si votre application affiche des données Google dans un onglet et une carte Google avec ces données dans un autre onglet, le premier onglet doit afficher le logo Google. Si votre application utilise des champs de recherche avec ou sans saisie semi-automatique, le logo doit être visible sur la même ligne ou juste à côté.

Le logo Google doit être positionné en bas à gauche de la carte et les informations d'attribution doivent être placées en bas à droite. Ces deux éléments doivent s'afficher entièrement sur la carte, et non en dessous de la carte ni à un autre endroit dans l'application. L'exemple de carte suivant montre le logo Google en bas à gauche de la carte et l'attribution en bas à droite.

Emplacement de l'attribution pour une règle donnée

Le fichier zip suivant contient le logo Google dans les dimensions appropriées pour les applications de bureau, Android et iOS. Vous ne devez en aucun cas redimensionner ni modifier ces logos.

Télécharger : google_logo.zip

Ne modifiez pas l'attribution. Vous ne devez pas supprimer, masquer ni rogner les informations d'attribution. Vous ne pouvez pas utiliser les logos Google en les intégrant (par exemple, "Ces cartes proviennent de [Google_logo]").

Placez les informations d'attribution à proximité du contenu. Si vous utilisez des captures d'écran d'images Google en dehors d'intégrations directes, incluez l'attribution standard telle qu'elle apparaît dans l'image. Si nécessaire, vous pouvez personnaliser le style et l'emplacement du texte d'attribution à condition qu'il soit placé à proximité du contenu et lisible par un utilisateur lambda. Vous n'êtes pas autorisé à déplacer l'attribution en dehors du contenu, par exemple à la fin de votre livre, dans les crédits de vos fichiers ou de votre émission, ou dans le pied de page de votre site Web.

Indiquez les fournisseurs de données tiers. Dans nos produits de cartographie, certaines données et images proviennent de fournisseurs autres que Google. Si vous utilisez de telles images, le texte de votre attribution doit mentionner le nom "Google" et les fournisseurs de données concernés (par exemple, "Données cartographiques : Google, Maxar Technologies"). Lorsque des fournisseurs de données tiers sont cités avec les images, la seule mention de "Google" ou du logo Google ne constitue pas une information d'attribution suffisante.

Si vous utilisez Google Maps Platform sur un appareil où il n'est pas pratique d'afficher les informations d'attribution, veuillez contacter l'équipe commerciale Google pour discuter des licences adaptées à votre situation.

Autres exigences concernant l'attribution

Suivez ces instructions pour récupérer les attributions tierces et les afficher les attributions dans votre application.

Extraire les mentions d'un lieu

Si votre application affiche des informations obtenues en appelant obtenir un lieu par ID, l'application doit également afficher les mentions tierces pour les détails du lieu. obtenues.

L'API renvoie Place . Pour récupérer les attributions à partir de l'objet Place, appelez Place.getAttributions() La méthode renvoie une List d'objets String, soit une valeur nulle. s'il n'y a pas d'attributions à afficher.

String placeId = "INSERT_PLACE_ID_HERE";
List<Place.Field> placeFields = Arrays.asList(Place.Field.ID, Place.Field.NAME);
FetchPlaceRequest request = FetchPlaceRequest.newInstance(placeId, placeFields);

placesClient.fetchPlace(request).addOnSuccessListener((response) -> {
  Place place = response.getPlace();
  textView.append("Place found: " + place.getName());
  List<String> attributions = place.getAttributions();
  if (attributions != null) {
    StringBuilder stringBuilder = new StringBuilder("Attributions: ");
    for (String attribution : attributions) {
      stringBuilder.append(attribution).append("\n");
    }
    textView.append(stringBuilder.toString());
  }}).addOnFailureListener((exception) -> {
    if (exception instanceof ApiException) {
      // Handle the error.
    }
  }
);

Afficher les attributions pour une photo

Si votre application affiche des photos de lieux, vous devez afficher les mentions pour chaque photo qui en comporte. PhotoMetadata, peut contenir l'un des deux types d'attributions suivants:

Pour obtenir les attributions de chaînes d'une photo, appelez PhotoMetadata.getAttributions() La méthode renvoie une Une séquence de caractères HTML ou une chaîne vide s'il n'y a pas d'attributions l'écran.

// Get the photo metadata from the Place object.
PhotoMetadata photoMetadata = place.getPhotoMetadatas().get(0);

// Get the attribution text.
String attributions = photoMetadata.getAttributions();

Pour obtenir les mentions de l'auteur d'une photo, appelez PhotoMetadata.getAuthorAttributions() La méthode renvoie une AuthorAttributions. Cet objet contient un List sur AuthorAttribution (un par attribution d'auteur).

// Get the photo metadata from the Place object.
PhotoMetadata photoMetadata = place.getPhotoMetadatas().get(0);

// Get the author attributions object.
AuthorAttributions authorAttributions = photoMetadata.getAuthorAttributions();
List<AuthorAttribution> authorAttributionList = authorAttributions.asList();

Afficher un avis

Un objet Place peut contenir jusqu'à cinq avis, chacun d'entre eux est représenté par Review . Si vous le souhaitez, vous pouvez afficher ces avis dans votre application.

Lorsque vous affichez des avis fournis par des utilisateurs Google, vous devez placer le le nom de l'auteur à proximité. Si disponible dans le champ "Attribution de l'auteur" de l'objet Review, nous vous recommandons d'inclure la photo de l'auteur et un lien vers leur profil. L'image suivante illustre un exemple avis sur un parc:

Affichage des informations sur l&#39;auteur

Google vous recommande également d'afficher la façon dont les avis sont triés un utilisateur final.

Pour accéder aux avis, appelez Place.getReviews():

// Specify the fields to return.
final List<Place.Field> placeFields = Arrays.asList(Place.Field.REVIEWS);

// Construct a request object, passing the place ID and fields array.
final FetchPlaceRequest request = FetchPlaceRequest.newInstance("INSERT_PLACE_ID_HERE", placeFields);

placesClient.fetchPlace(request).addOnSuccessListener((response) -> {
    Place place = response.getPlace();
    List<Review> reviews = place.getReviews();
    // For loop for iterating over the List
    for (int i = 0; i < reviews.size(); i++) {
      // For each review, get the Review object.
        Review placeReview = reviews.get(i);

      // Get any attribution and author attribution.
        String reviewAttribution = placeReview.getAttribution();
        AuthorAttribution authorAttribution = placeReview.getAuthorAttribution();

        // Display the review contents and attributions as necessary.
    }
}).addOnFailureListener((exception) -> {
    if (exception instanceof ApiException) {
        // Handle the error.
    }
});

Afficher les mentions tierces

Les mentions à des fournisseurs tiers incluent du contenu et des liens au format HTML que vous devez conserver et présenter à l'utilisateur au format utilisé sont fournies. Google recommande d'afficher ces informations sous les détails du lieu.

L'API génère les mentions de tous les lieux utilisés par l'application. Les attributions sont fournies par appel d'API, et non par lieu.

Pour afficher les attributions, vous pouvez utiliser TextView Exemple :

TextView attributionsText = (TextView) findViewById(R.id.attributions);
String thirdPartyAttributions = place.getAttributions();
attributionsText.setText(thirdPartyAttributions);

Exemple de mention tierce

Listings by <a href="https://www.example.com/">Example Company</a>

Consignes de style pour l'attribution Google

Vous trouverez ci-dessous les consignes à appliquer concernant le style des attributions Google en CSS et HTML si vous ne pouvez pas utiliser le logo Google téléchargeable.

Espacement

L'espacement autour du logo complet doit être égal ou supérieur à la hauteur du "G" de Google.

L'espacement entre le texte d'attribution et le logo Google doit correspondre à la moitié de la largeur du "G".

Lisibilité

Le nom de l'auteur doit toujours s'afficher de façon claire et lisible, dans une variante de couleur adaptée à l'arrière-plan. Veillez à toujours prévoir suffisamment de contraste pour la variante de logo que vous choisissez.

Couleur

Utilisez un texte en Google Material Gray 700 sur un arrière-plan clair ou blanc, avec une teinte de noir entre 0 % et 40 % maximum.

Google
#5F6368
RGB 95 99 104
HSL 213 5 39
HSB 213 9 41

Sur les arrière-plans plus sombres, et sur les photos ou motifs simples, utilisez un texte blanc pour le nom de l'auteur et l'attribution.

Google
#FFFFFF
RGB 255 255 255
HSL 0 0 100
HSB 0 0 100

Police

Utilisez la police Roboto.

Exemple d'élément CSS

L'élément CSS suivant appliqué au texte "Google" affichera "Google" avec les paramètres appropriés (police, couleur et espacement) sur un arrière-plan clair ou blanc.

font-family: Roboto;
font-style: normal;
font-weight: 500;
font-size: 16px;
line-height: 16px;
padding: 16px;
letter-spacing: 0.0575em; /* 0.69px */
color: #5F6368;