Neste documento, listamos os requisitos específicos a todos os aplicativos desenvolvidos com o SDK do Places para iOS, incluindo o serviço Place Autocomplete que faz parte dessa API. Veja mais informações gerais para desenvolvedores do Google Maps nos Termos de Serviço da Plataforma Google Maps.
Fornecimento de termos de uso e política de privacidade
Ao desenvolver um aplicativo do SDK do Places para iOS, é necessário disponibilizar os Termos de Uso e a Política de Privacidade do aplicativo que atenda às diretrizes descritas no Contrato com o Google:
- Os Termos de Uso e a Política de Privacidade precisam estar disponíveis publicamente.
- É necessário declarar explicitamente nos Termos de Uso do app que, ao usar o aplicativo, os usuários estão sujeitos aos Termos de Serviço do Google.
- Você precisa notificar os usuários na sua Política de Privacidade de que você está usando as APIs Google Maps e incorporar por referência a Política de Privacidade do Google.
O local recomendado para disponibilizar os Termos de Uso e a Política de Privacidade depende da plataforma do aplicativo.
Apps para dispositivos móveis
Se você estiver desenvolvendo um app para dispositivos móveis, recomendamos fornecer um link para os Termos de Uso e a Política de Privacidade na página de download do app na app store relevante e em um menu de configurações.
Aplicativos da Web
Se você estiver desenvolvendo um aplicativo da Web, é recomendável fornecer um link para os Termos de Uso e a Política de Privacidade no rodapé do site.
Pré-busca, armazenamento em cache ou armazenamento de conteúdo
Os aplicativos que usam o SDK do Places para iOS estão vinculados aos termos do seu Contrato com o Google. Sujeito aos termos do seu Contrato, não é permitido fazer pré-buscas, armazenar, indexar ou armazenar em cache qualquer conteúdo, exceto de acordo com as condições estabelecidas nos termos.
Exibir resultados do SDK do Places para iOS
Você pode exibir 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 exibidos em um mapa do Google. É proibido usar os dados do SDK do Places para iOS em um mapa que não seja do Google.
Exibição do logotipo e das atribuições do Google
Se o aplicativo exibir dados em um mapa do Google, o logotipo do Google será incluído e não poderá ser alterado. Os aplicativos que exibem dados do Google na mesma tela que um mapa do Google não precisam fornecer atribuições adicionais ao Google.
Se o aplicativo exibir dados em uma página ou visualização que também não exibe um mapa do Google Maps, será necessário exibir um logotipo do Google com esses dados. Por exemplo, se o aplicativo exibir dados do Google em uma guia e um mapa do Google com esses dados em outra guia, a primeira guia precisará mostrar o logotipo do Google. Se o aplicativo usar campos de pesquisa com ou sem preenchimento automático, o logotipo precisará ser exibido in-line.
O logotipo do Google precisa ser colocado no canto inferior esquerdo do mapa, com as informações de atribuição no canto inferior direito, e ambas precisam estar no mapa apresentado como um todo, e não abaixo do mapa ou de outro lugar no aplicativo. O exemplo de mapa a seguir mostra o logotipo do Google no canto inferior esquerdo do mapa e a atribuição no canto inferior direito.

Para uso com fundo claro | Para usar em um fundo escuro |
---|---|
![]() |
![]() |
O arquivo ZIP a seguir contém o logotipo do Google nos tamanhos corretos para aplicativos para computador, Android e iOS. Não é permitido redimensionar nem modificar esses logotipos de nenhuma forma.
Download:google_logo.zip
Não modifique a atribuição. Não remova, oculte ou corte as informações de atribuição. Não é possível usar logotipos do Google in-line (por exemplo, "Esses mapas são de [Google_logo]").
Mantenha a atribuição próxima. Se você estiver usando capturas de tela das imagens do Google fora das incorporações diretas, inclua a atribuição padrão como ela aparece na imagem. Se necessário, é possível personalizar o estilo e o posicionamento do texto de atribuição, desde que o texto esteja próximo do conteúdo e legível para o leitor ou leitor médio. Não mude a atribuição do conteúdo, como o fim do livro, os créditos dos arquivos ou programas ou o rodapé do site.
Inclua provedores de dados terceirizados. Alguns dados e imagens dos nossos produtos de mapeamento vêm de provedores diferentes do Google. Se você usar essas imagens, o texto da sua atribuição precisará dizer o nome "quot;Google" e os provedores de dados relevantes, como "Dados do mapa: Google, Maxar Technologies." Quando há provedores de dados de terceiros citados com as imagens, o que inclui somente "Google" ou o logotipo do Google não é a atribuição adequada.
Se você estiver usando a Plataforma Google Maps em um dispositivo em que a exibição da atribuição não é prática, entre em contato com a equipe de vendas do Google para discutir as licenças apropriadas para seu caso de uso.
Outros requisitos de atribuição
As atribuições para provedores de terceiros contêm conteúdo e links que você precisa mostrar ao usuário no formato em que é fornecido. O Google recomenda que seu app mostre essas informações abaixo dos detalhes do lugar.
As atribuições de terceiros retornadas pela API não incluem a atribuição do Google. Você precisa incluir essa atribuição por conta própria, conforme descrito em Como 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 lugar recebendo um
local por ID, é possível
recuperar as atribuições desse lugar da
propriedade attributions
no
GMSPlace
.
O attributions
é fornecido como um
objeto NSAttributedString
.
Recuperar atribuições para um conjunto de locais
Se o app exibe informações recebidas solicitando o local atual do dispositivo, ele precisa exibir atribuições de terceiros para os detalhes do lugar exibidos. É possível recuperar as
atribuições de todos os locais recuperados na solicitação, usando a
propriedade attributions
em
GMSPlaceLikelihoodList
.
O attributions
é fornecido como um objeto
NSAttributedString
, que pode ser acessado e exibido da
mesma forma que o attributions
em um único lugar, conforme descrito
acima.
Exibir atribuições para uma foto
Se o app exibe fotos, é necessário
mostrar atribuições para cada foto que as tiver. Para receber atribuições de uma foto, chame GMSPlacePhotoMetadata.attributions
. Essa propriedade será uma
NSAttributedString
, ou nil
se não houver atribuições para
exibir.
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; } } }];
Exibir atribuições de terceiros
As atribuições para provedores de terceiros 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 exibir as atribuições é com um UITextView
, porque os links nas atribuições precisam funcionar.
Para garantir que os links funcionem, defina um delegado no UITextView
e defina o método 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 exemplo de empresa
No exemplo acima, o intervalo de texto Exemplo de empresa é coberto por um atributo NSLink
.
O ID de lugar, usado para identificar um local de maneira exclusiva está isento da restrição de armazenamento em cache. Portanto, é possível armazenar valores de ID de lugar indefinidamente. O ID de lugar é retornado no campo place_id
nas respostas do SDK do Places para iOS.
Diretrizes de estilo para atribuição do Google
Veja a seguir as diretrizes de estilo para atribuições do Google em CSS e HTML se você não conseguir usar o logotipo do Google para download.
Espaço livre
A quantidade de espaço livre ao redor do logotipo completo precisa ser igual ou maior do que a altura do "quot;G" no Google.
O espaço entre o texto de atribuição e o logotipo do Google precisa ser a metade da largura do "G".

Legibilidade
A assinatura precisa ser sempre clara, legível e aparecer na variação de cores adequada para um determinado plano de fundo. Sempre forneça contraste suficiente para a variação do logotipo selecionada.
Cor
Use o texto 700 cinza do Google Material Design em um fundo branco ou claro que use um intervalo de 0% a 40% de tonalidade máxima de preto.
#5F6368 RGB 95 99 104 HSL 213 5 39 HSB 213 9 41
Em planos de fundo mais escuros e sobre padrões de fotografia ou não ocupados, use texto branco para assinatura e atribuição.
#FFFFFF RGB 255 255 255 HSL 0 0 100 HSB 0 0 100
Fonte
Use a fonte Roboto (link em inglês).
Exemplo de CSS
O CSS a seguir, quando aplicado ao texto "Google" seria renderizado "Google" com a fonte, a cor e o espaçamento adequados em um fundo branco ou branco.
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;