Este documento lista os requisitos específicos para todos os aplicativos desenvolvido com o SDK do Places para iOS, incluindo o que faz parte da API. Mais informações gerais sobre o Google Maps desenvolvedores podem ser encontrados Termos de Serviço da Plataforma Google Maps.
Fornecimento de termos de uso e política de privacidade
Se você desenvolver um aplicativo do SDK do Places para iOS, será preciso disponibilizar o Termos de uso e um Privacidade do Google Cloud com seu aplicativo que atenda às diretrizes descritas no seu Contrato com o Google:
- Os Termos de Uso e a Política de Privacidade precisam ser disponibilizados publicamente.
- Declare explicitamente nos Termos de Uso do seu aplicativo que, ao usá-lo, as pessoas estão sujeitas aos Termos de Serviço do Google.
- Avise aos usuários na sua Política de Privacidade que está usando as APIs Google Maps e incorpore a Política de Privacidade do Google para referência.
O lugar recomendado para os Termos de Uso e a Política de Privacidade depende da plataforma do aplicativo.
Aplicativos para dispositivos móveis
Se estiver desenvolvendo um app para dispositivos móveis, recomendamos que coloque um link para os Termos de Uso e a Política de Privacidade na página de download da loja de aplicativos relevante e no menu de configurações do aplicativo.
Aplicativos da Web
Se estiver desenvolvendo um aplicativo da Web, recomendamos que coloque um link para os Termos de Uso e a Política de Privacidade no rodapé do seu site.
Pré-busca, armazenamento em cache ou armazenamento de conteúdo
Os aplicativos que usam o SDK do Places para iOS estão sujeitos aos termos da sua Contrato com o Google. Sujeito aos termos do Contrato, não faça pré-busca, indexação, armazenamento em cache ou no local de qualquer Conteúdo, exceto de acordo com as condições limitadas declaradas nos termos.
O ID de lugar, usado para identificar um local de maneira exclusiva, está isento das restrições de armazenamento em cache. O ID de lugar é retornado no campo `place_id` na Respostas do SDK do Places para iOS. Aprenda a salvar, atualizar e gerenciar IDs no guia de IDs de lugar.
Exibir resultados do SDK do Places para iOS
Você pode mostrar os resultados do SDK do Places para iOS em um mapa do Google ou sem um mapa. Se você quiser exibir resultados do SDK do Places para iOS em um mapa, esses resultados precisarão ser mostrados em um mapa do Google. É proibido usar dados do SDK do Places para iOS em mapas que não sejam do Google.
Mostrar o logotipo do Google e atribuições
O logotipo do Google é incluído quando o aplicativo mostra dados em um mapa do Google e não pode ser alterado. Aplicativos que mostram dados do Google na mesma tela que um mapa não precisam fornecer atribuições adicionais ao Google.
Se o aplicativo mostrar dados em uma página ou visualização que não tem um mapa do Google, inclua o logotipo. Por exemplo, se o aplicativo apresentar dados do Google em uma guia e um mapa do Google em outra, a primeira precisa incluir o logotipo do Google. Se o aplicativo usar campos de pesquisa com ou sem preenchimento automático, mostre o logotipo inline.
O logotipo do Google deve ficar no canto inferior esquerdo do mapa e as informações de atribuição no canto inferior direito. Eles precisam estar no mapa apresentado como um todo, não abaixo dele ou em outro lugar no aplicativo. Exemplo com o logotipo do Google no canto inferior esquerdo do mapa e a atribuição no canto inferior direito.
Para uso em segundo plano claro | Para uso em segundo plano escuro |
---|---|
O arquivo ZIP a seguir contém o logotipo do Google nos tamanhos corretos para aplicativos para computador, Android e iOS. Não redimensione nem modifique esses logotipos.
Download: google_logo.zip
Não modifique a atribuição. Não remova, oculte ou corte as informações de atribuição. Não é permitido usar os logotipos do Google inline (por exemplo, "Estes mapas são do [Google_logo]").
Mantenha a atribuição próxima. Se for usar capturas de tela de imagens do Google fora da incorporação direta, inclua a atribuição padrão como aparece na imagem. Se necessário, personalize o estilo e a posição do texto de atribuição, contanto que o texto fique próximo ao conteúdo e seja legível para a pessoa comum. Não distancie a atribuição do conteúdo, como no fim do livro, nos créditos dos arquivos ou programa ou no rodapé do site.
Inclua provedores de dados de terceiros. Alguns dados e imagens nos nossos produtos de mapas têm origens diferentes do Google. Se você usar essas imagens, o texto da atribuição deverá mostrar o nome "Google" e os provedores de dados relevantes, como "Dados do mapa: Google, Maxar Technologies". Apenas incluir o nome e o logotipo do Google quando provedores de dados de terceiros são citados nas imagens não é uma atribuição correta.
Se estiver usando a Plataforma Google Maps em um dispositivo em que não é prático mostrar a atribuição, entre em contato com a equipe de vendas do Google para discutir as licenças adequadas ao seu caso de uso.
Outros requisitos de atribuição
As atribuições a provedores terceirizados incluem conteúdo e links que você devem ser exibidos ao usuário no formato em que são fornecidos. Google recomenda que seu aplicativo mostre essas informações abaixo dos detalhes do lugar.
As atribuições de terceiros retornadas pelo a API não incluem a atribuição do Google. Você deve incluir essa atribuição por conta própria, conforme descrito em Exibir o logotipo e as atribuições do Google.
Siga estas instruções para recuperar atribuições de terceiros para um único lugar ou um conjunto de lugares.
Recuperar atribuições para um único local
Ao recuperar um local obtendo um
lugar por ID, é possível
pode recuperar as atribuições daquele lugar da
Propriedade attributions
ativada
GMSPlace
Os attributions
são fornecidos como um
objeto NSAttributedString
.
Recuperar atribuições para um conjunto de lugares
Se o app exibir informações coletadas solicitando o ID do dispositivo,
lugar atual, ele precisará exibir
atribuições de terceiros para os detalhes do lugar exibidos. Você pode recuperar o
atribuições para todos os locais recuperados na solicitação, do
Propriedade attributions
ativada
GMSPlaceLikelihoodList
.
Os attributions
são fornecidos como
Objeto NSAttributedString
, que você pode acessar e exibir em
da mesma forma que attributions
em um único local, conforme descrito
acima.
Mostrar atribuições de uma foto
Caso seu app exiba
fotos, será necessário
mostrar attributions
e authorAttributions
para cada
que tenha eles.
- Para acessar quaisquer atribuições, use
GMSPlacePhotoMetadata.attributions
Esta propriedade é umNSAttributedString
, ounil
se não há atribuições para exibir. - Para acessar quaisquer atribuições de autor, use
GMSPlacePhotoMetadata.authorAttributions
Essa propriedade contém uma matriz deGMSPlaceAuthorAttribution
objetos.
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; } } }];
Mostrar uma avaliação
Um objeto GMSPlace
pode conter até cinco avaliações, em que cada
revisão é representada por um objeto GMSPlaceReview
. Você pode
exibir essas avaliações no app.
Ao exibir avaliações enviadas por usuários do Google, coloque o
nome do autor nas proximidades. Quando disponível no campo de atribuição do autor
do objeto GMSPlaceReview
, recomendamos que você inclua o atributo
foto e link para o perfil deles também. A imagem abaixo mostra um exemplo
de uma avaliação de um parque:
O Google também recomenda que você exiba como as avaliações estão sendo classificadas para o para o usuário final.
Para acessar as avaliações:
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. } }];
Exibir atribuições de terceiros
As atribuições a provedores terceirizados são fornecidas como objetos NSAttributedString
que
têm conteúdo e links que precisam ser preservados e exibidos ao usuário.
A maneira recomendada de mostrar as atribuições é com UITextView
, porque os links nas atribuições precisam funcionar.
Para garantir que os links funcionem, defina um delegado no UITextView
e defina o shouldInteractWithURL
.
do seu UITextViewDelegate
para retornar 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; }
Exemplo de uma atribuição de terceiros
Uma atribuição de terceiros geralmente consiste em texto com um link. Por exemplo:
Listagens por empresa exemplo
No exemplo acima, o intervalo de texto Exemplo de empresa é abrangido por
um atributo NSLink
.
Diretrizes de estilo de uma atribuição do Google
Estas são as diretrizes de estilo para atribuições do Google em CSS e HTML, caso não possa usar o logotipo para download do Google.
Espaço livre
O espaço livre ao redor do logotipo completo deve ser pelo menos igual à altura do "G" em Google.
O espaço entre a cópia da atribuição e o logotipo deve ter metade da largura do "G".
Legibilidade
Apresente uma assinatura clara, legível e na variação de cor adequada ao segundo plano. Garanta o contraste correto para a variação de logotipo selecionada.
Cor
Em segundo plano branco ou claro que usa um intervalo de 0% a 40% de tonalidade de preto, o texto deve ser no cinza 700 do Google Material.
#5F6368 RGB 95 99 104 HSL 213 5 39 HSB 213 9 41
Em segundo plano escuro ou em fotografia e padrões simples, use branco para a assinatura e a atribuição.
#FFFFFF RGB 255 255 255 HSL 0 0 100 HSB 0 0 100
Fonte
Use Roboto.
CSS de exemplo
Aplique o CSS a seguir no texto "Google" para gerar um resultado com a fonte, a cor e o espaçamento apropriados em segundo plano branco ou claro.
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;