Norme relative all'SDK Places per iOS

Questo documento elenca i requisiti specifici per tutte le applicazioni sviluppate con l'SDK Places per iOS, incluso il servizio Place Autocomplete che fa parte di questa API. Informazioni più generali per gli sviluppatori di Google Maps sono disponibili nei Termini di servizio di Google Maps Platform.

Fornendo Termini e condizioni d'uso e norme sulla privacy

Se sviluppi un'applicazione Places SDK per iOS, devi rendere disponibili i Termini di utilizzo e le Norme sulla privacy con la tua applicazione, che devono rispettare le linee guida descritte nel tuo contratto con Google:

  • I Termini e condizioni d'uso e le Norme sulla privacy devono essere disponibili pubblicamente.
  • Devi dichiarare esplicitamente nei Termini e condizioni d'uso della tua applicazione che, utilizzandola, gli utenti sono vincolati ai Termini di servizio di Google.
  • Devi informare gli utenti nelle tue Norme sulla privacy che utilizzi le API di Google Maps e incorporare per riferimento le Norme sulla privacy di Google.

Il luogo consigliato per rendere disponibili i Termini e condizioni d'uso e le Norme sulla privacy dipende dalla piattaforma della tua applicazione.

App per dispositivi mobili

Se stai sviluppando un'app mobile, è consigliabile fornire un link ai Termini e condizioni d'uso e alle Norme sulla privacy nella pagina di download dell'applicazione nel relativo store e in un menu delle impostazioni dell'applicazione.

Applicazioni web

Se stai sviluppando un'applicazione web, è consigliabile fornire un link ai Termini e condizioni d'uso e alle Norme sulla privacy nel piè di pagina del sito web.

Prelettura, memorizzazione nella cache o archiviazione di contenuti

Le applicazioni che utilizzano l'SDK Places per iOS sono vincolate dai termini del Contratto con Google. Fatto salvo quanto stabilito nei termini del Contratto, non devi prelevare, indicizzare, memorizzare o memorizzare nella cache alcun Contenuto, salvo nelle condizioni limitate indicate nei termini.

Tieni presente che l'ID luogo, utilizzato per identificare in modo univoco un luogo, è esente dalle restrizioni di memorizzazione nella cache. L'ID luogo viene restituito nel campo place_id nelle risposte di Places SDK for iOS. Scopri come salvare, aggiornare e gestire gli ID luogo nella guida sugli ID luogo.

Visualizzazione dei risultati dell'SDK Places per iOS

Puoi visualizzare i risultati di Places SDK for iOS su una mappa di Google o senza una mappa. Se vuoi visualizzare i risultati di Places SDK per iOS su una mappa, questi risultati devono essere visualizzati su una mappa di Google. È vietato utilizzare i dati di Places SDK for iOS su una mappa che non sia una mappa di Google.

Se la tua applicazione mostra dati su una mappa di Google, il logo di Google viene incluso e non può essere modificato. Le applicazioni che mostrano dati di Google nella stessa schermata di una mappa di Google non devono fornire ulteriori attribuzioni a Google.

Se la tua applicazione mostra i dati in una pagina o una visualizzazione che non mostra anche una mappa di Google, devi mostrare un logo Google con i dati. Ad esempio, se la tua applicazione mostra i dati di Google in una scheda e una mappa di Google con questi dati in un'altra scheda, la prima scheda deve mostrare il logo di Google. Se la tua applicazione utilizza campi di ricerca con o senza completamento automatico, il logo deve essere visualizzato in linea.

Il logo Google deve essere posizionato nell'angolo in basso a sinistra della mappa, mentre le informazioni sull'attribuzione devono trovarsi nell'angolo in basso a destra. Entrambi devono essere sulla mappa presentata nel suo insieme e non sotto la mappa o in un altro punto dell'applicazione. Il seguente esempio di mappa mostra il logo di Google in basso a sinistra e l'attribuzione in basso a destra.

posizionamento dell'attribuzione delle norme

Il seguente file ZIP contiene il logo di Google nelle dimensioni corrette per le applicazioni per computer, Android e iOS. Non puoi ridimensionare o modificare in alcun modo questi loghi.

Scarica: google_logo.zip

Non modificare l'attribuzione. Non rimuovere, oscurare o ritagliare le informazioni sull'attribuzione. Non puoi utilizzare i loghi di Google in linea (ad esempio, "Queste mappe provengono da [Google_logo]").

Mantieni l'attribuzione vicina. Se utilizzi screenshot delle immagini di Google al di fuori degli annunci incorporati diretti, includi l'attribuzione standard così come appare nell'immagine. Se necessario, puoi personalizzare lo stile e il posizionamento del testo dell'attribuzione, a condizione che il testo sia nelle immediate vicinanze dei contenuti e leggibile per lo spettatore o il lettore medio. Non puoi allontanare l'attribuzione dai contenuti, ad esempio alla fine del libro, dai riconoscimenti dei file o del programma o dal piè di pagina del tuo sito web.

Includi fornitori di dati di terze parti. Alcuni dati e immagini dei nostri prodotti di mappatura provengono da fornitori diversi da Google. Se utilizzi tali immagini, il testo dell'attribuzione deve riportare il nome "Google" e il fornitore o i fornitori di dati pertinenti, ad esempio "Dati mappa: Google, Maxar Technologies". Se nelle immagini sono citati fornitori di dati di terze parti, l'inclusione solo di "Google" o del logo di Google non è un'attribuzione corretta.

Se utilizzi Google Maps Platform su un dispositivo su cui la visualizzazione dell'attribuzione non è pratica, contatta il team di vendita di Google per discutere delle licenze appropriate per il tuo caso d'uso.

Altri requisiti di attribuzione

Le attribuzioni ai fornitori di terze parti contengono contenuti e link che devi mostrare all'utente nel formato in cui vengono forniti. Google consiglia di mostrare queste informazioni sotto i dettagli del luogo nell'app.

Le attribuzioni di terze parti restituite dall'API non includono l'attribuzione Google. Devi includere tu stesso questa attribuzione, come descritto nella sezione Visualizzare il logo e le attribuzioni di Google.

Segui queste istruzioni per recuperare le attribuzioni di terze parti per un singolo luogo o una raccolta di luoghi.

Recuperare le attribuzioni per un singolo luogo

Quando recuperi un luogo recuperando un luogo in base all'ID, puoi recuperare le attribuzioni per quel luogo dalla proprietà attributions in GMSPlace.

I attributions vengono forniti come oggetto NSAttributedString.

Recuperare le attribuzioni per una raccolta di luoghi

Se la tua app mostra informazioni ottenute richiedendo il luogo corrente del dispositivo, deve mostrare gli attributi di terze parti per i dettagli del luogo visualizzati. Puoi recuperare le attribuzioni per tutti i luoghi recuperati nella richiesta dalla proprietà attributions su GMSPlaceLikelihoodList.

Gli attributions vengono forniti come oggetto NSAttributedString, a cui puoi accedere e che puoi visualizzare come gli attributions in un unico posto, come descritto sopra.

Attribuzioni dei risultati di ricerca

In Europa, quando si utilizza il ranking non alterato di Google, i prodotti di ricerca devono avere un testo esplicativo non più lontano di un clic che descriva i fattori principali e la loro ponderazione che determinano il ranking dei risultati di ricerca. Testo esplicativo:

Intestazione: Informazioni su questi risultati

Testo: quando cerchi attività o luoghi nelle vicinanze di una località, Google Maps mostra risultati di ricerca locale. Per trovare i risultati migliori per la ricerca, vengono combinati diversi fattori, principalmente pertinenza, distanza ed evidenza.

Pulsante 1: Scopri di più
Il testo "Scopri di più" deve rimandare a un articolo del Centro assistenza.

Pulsante 2: OK

Visualizzare le attribuzioni di una foto

Se la tua app mostra foto, devi mostrare eventuali attributions e authorAttributions per ogni foto che li contiene.

Swift

GMSPlacesClient.sharedClient().lookUpPhotosForPlaceID(placeID) { (photos, error) -> Void in
  if let error = error {
    // TODO: handle the error.
    print("Error: \(error.description)")
  } else {
    // Get attribution for the first photo in the list.
    if let photo = photos?.results.first {
      let attributions = photo.attributions
    }
  }
}
    

Objective-C

[[GMSPlacesClient sharedClient]
    lookUpPhotosForPlaceID:placeID
      callback:^(GMSPlacePhotoMetadataList *_Nullable photos,
                  NSError *_Nullable error) {
        if (error) {
          // TODO: handle the error.
          NSLog(@"Error: %@", [error description]);
        } else {
          // Get attribution for the first photo in the list.
          if (photos.results.count > 0) {
            GMSPlacePhotoMetadata *photo = photos.results.firstObject;
            NSAttributedString *attributions = photo.attributions;
          }
        }
      }];
    

Mostrare una recensione

Un oggetto GMSPlace può contenere fino a cinque recensioni, ciascuna rappresentata da un oggetto GMSPlaceReview. Se vuoi, puoi visualizzare queste recensioni nella tua app.

Quando mostri le recensioni inviate dagli utenti di Google, devi posizionare il nome dell'autore nelle immediate vicinanze. Se disponibile nel campo di attribuzione dell'autore dell'oggetto GMSPlaceReview, ti consigliamo di includere anche la foto dell'autore e il link al suo profilo. L'immagine seguente mostra un esempio di recensione di un parco:

Visualizzazione attribuzione autore

Google consiglia inoltre di mostrare all'utente finale il modo in cui le recensioni vengono ordinate.

Per accedere alle recensioni:

Swift

// Define a Place ID.
let placeID = "ChIJV4k8_9UodTERU5KXbkYpSYs"

// Specify the place data types to return.
let myProperties: [GMSPlaceProperty] = [.name, .website, .reviews]

// Create the GMSFetchPlaceRequest object.
let fetchPlaceRequest = GMSFetchPlaceRequest(placeID: placeID, placeProperties: myProperties)

client.fetchPlaceWithRequest(fetchPlaceRequest: fetchPlaceRequest, callback: {
  (place: GMSPlace?, error: Error?) in
  if let error = error {
    print("An error occurred: \(error.localizedDescription)")
    return
  }
  if let place = place {
    let firstReview: GMSPlaceReview = place.reviews![0]

    // Use firstReview to access review text, authorAttribution, and other fields.

  }
})

Objective-C

// Define a Place ID.
NSString *placeID = @"ChIJV4k8_9UodTERU5KXbkYpSYs";

// Specify the place data types to return, including reviews.
NSArray<GMSPlaceProperty *> *myProperties = @[GMSPlacePropertyName, GMSPlacePropertyWebsite,GMSPlacePropertyReviews];

GMSFetchPlaceRequest *fetchPlaceRequest = [[GMSFetchPlaceRequest alloc] initWithPlaceID:placeID placeProperties: myProperties];

[placesClient fetchPlaceWithRequest: fetchPlaceRequest, callback: ^(GMSPlace *_Nullable place, NSError *_Nullable error) {
  if (error) {
    // TODO: handle the error.
    NSLog(@"Error: %@", [error description]);
  } else {
    // Get first review.
    GMSPlaceReview *firstReview = [place reviews][0];

    // Use firstReview to access review text, authorAttribution, and other fields.

  }
}];

Visualizzare le attribuzioni di terze parti

Le attribuzioni a fornitori di terze parti vengono fornite come oggetti NSAttributedString che includono contenuti e link che devi conservare e mostrare all'utente.

Il modo consigliato per visualizzare le attribuzioni è con un UITextView, perché i link nelle attribuzioni devono funzionare. Per assicurarti che i link funzionino, imposta un delegato su UITextView e imposta il metodo shouldInteractWithURL di UITextViewDelegate in modo che restituisca YES.

Swift

...
  self.attributionTextView.delegate = self
...

// MARK: - UITextViewDelegate

func textView(textView: UITextView, shouldInteractWithURL URL: NSURL,
  inRange characterRange: NSRange) -> Bool {
  // Make links clickable.
  return true
}
    

Objective-C

...
  self.attributionTextView.delegate = self;
...

#pragma mark - UITextViewDelegate

- (BOOL)textView:(UITextView *)textView
    shouldInteractWithURL:(NSURL *)url
                  inRange:(NSRange)characterRange {
  // Make links clickable.
  return YES;
}
    

Esempio di attribuzione di terze parti

Un'attribuzione di terze parti è in genere costituita da un testo con un link. Ad esempio:

Annunci della Azienda di esempio

Nell'esempio precedente, l'intervallo di testo Azienda di esempio è coperto da un attributo NSLink.

Linee guida di stile per l'attribuzione Google

Di seguito sono riportate le linee guida di stile per le attribuzioni di Google in CSS e HTML se non riesci a utilizzare il logo di Google scaricabile.

Spazio vuoto

La quantità di spazio vuoto attorno al logo completo deve essere uguale o maggiore rispetto all'altezza della "G" di Google.

Lo spazio tra il testo dell'attribuzione e il logo di Google deve avere la metà della larghezza della "G".

Leggibilità

Il nome dell'autore deve sempre essere chiaro, leggibile e nella variante di colore corretta per un determinato sfondo. Assicurati sempre di fornire un contrasto sufficiente per la variante del logo selezionata.

Colore

Utilizza il testo grigio 700 di Materiale Google su uno sfondo bianco o chiaro che utilizza un intervallo di 0-40% di tinta massima di nero.

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

Su sfondi più scuri e su fotografie o motivi non troppo elaborati, utilizza il testo bianco per la firma e l'attribuzione.

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

Carattere

Utilizza il carattere Roboto.

CSS di esempio

Il seguente CSS, quando applicato al testo "Google", mostrerà "Google" con il carattere, il colore e la spaziatura appropriati su uno sfondo bianco o chiaro.

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;