Norme relative all'SDK Places per iOS

Questo documento elenca i requisiti specifici di tutte le applicazioni sviluppate con Places SDK per iOS, incluso il servizio Place Autocomplete che fa parte di tale API. Ulteriori informazioni 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 nell'applicazione i Termini e condizioni d'uso e le Norme sulla privacy dell'applicazione, nel rispetto delle linee guida descritte nel Contratto con Google:

  • I Termini e condizioni d'uso e le Norme sulla privacy devono essere disponibili pubblicamente.
  • Nei Termini e condizioni d'uso della tua applicazione devi indicare esplicitamente che gli utenti sono vincolati dai Termini di servizio di Google se utilizzano la tua applicazione.
  • Nelle tue Norme sulla privacy devi informare gli utenti che utilizzi le API di Google Maps e incorporare tramite riferimento le Norme sulla privacy di Google.

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

App mobile

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 Places SDK per iOS sono vincolate dai termini del Contratto con Google. In base ai termini del Contratto, l'utente non può precaricare, indicizzare, archiviare o memorizzare nella cache alcun Contenuto, ad eccezione delle 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 agli ID luogo.

Visualizzazione dei risultati di Places SDK for iOS

Puoi visualizzare i risultati dell'SDK Places per iOS su una mappa di Google o senza 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 per 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 visualizza dati su una pagina o una visualizzazione che non mostra anche una mappa di Google, devi mostrare un logo Google con questi dati. Ad esempio, se la tua applicazione visualizza 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 di Google deve essere posizionato nell'angolo in basso a sinistra della mappa e le informazioni sull'attribuzione devono trovarsi nell'angolo in basso a destra. Entrambe le informazioni sulla mappa devono essere visualizzate nella sua interezza e non sotto la mappa o un altro luogo all'interno dell'applicazione. Il seguente esempio di mappa mostra il logo Google in basso a sinistra nella mappa e l'attribuzione in basso a destra.

posizionamento attribuzione criteri

Il seguente file ZIP contiene il logo di Google nelle dimensioni corrette per applicazioni desktop, 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 molto vicina. Se utilizzi screenshot di immagini Google al di fuori degli incorporamenti 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 sia vicino ai 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 sui 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". Quando alle immagini vengono citati fornitori di dati di terze parti, includere solo "Google" o il logo di Google non è un'attribuzione corretta.

Se utilizzi Google Maps Platform su un dispositivo in 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 a fornitori di terze parti includono contenuti e link che devi mostrare all'utente nel formato in cui sono 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 un insieme 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.

Gli attributions vengono forniti come oggetto NSAttributedString.

Recuperare le attribuzioni per una raccolta di luoghi

Se l'app mostra informazioni ottenute richiedendo il luogo attuale del dispositivo, deve mostrare attribuzioni di terze parti per i dettagli del luogo visualizzati. Puoi recuperare le attribuzioni per tutti i luoghi recuperati nella richiesta, dalla proprietà attributions in 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.

Visualizzare le attribuzioni di una foto

Se nell'app vengono mostrate foto, devi mostrare attributions e authorAttributions per ogni foto in cui sono presenti.

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 visualizzi recensioni fornite da utenti di Google, devi avvicinare il nome dell'autore. 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.

  }
}];

Mostra 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 è utilizzare 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 consiste in testo con un link. Ad esempio:

Schede dell'azienda di esempio

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

Linee guida relative allo 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 intorno al logo completo deve essere uguale o superiore all'altezza della "G" su Google.

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

Leggibilità

La riga dell'autore deve sempre essere chiara, leggibile e avere la giusta variazione di colore per uno sfondo specificato. Assicurati sempre di fornire un contrasto sufficiente per la variante del logo che seleziona.

Colore

Utilizza il testo Google Material Gray 700 su uno sfondo bianco o chiaro con una percentuale massima di nero compresa tra 0% e 40%.

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

Su sfondi più scuri, sopra fotografie o motivi non occulti, utilizza il testo in bianco per la riga dell'autore 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;