Políticas do SDK do Maps para Android

Mantenha tudo organizado com as coleções Salve e categorize o conteúdo com base nas suas preferências.

Este tópico fornece requisitos de atribuição para todos os aplicativos desenvolvidos com o SDK do Maps para Android, incluindo o serviço Place Autocomplete que faz parte dessa API. Para ver mais termos da Plataforma Google Maps, consulte os Termos de Serviço da Plataforma Google Maps.

Fornecimento de termos de uso e política de privacidade

Se você desenvolver um aplicativo SDK do Maps para Android, será necessário disponibilizar os Termos de Uso e a Política de Privacidade com o 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 Maps para Android 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.

Como exibir resultados do SDK do Maps para Android

Você pode exibir os resultados do SDK do Maps para Android em um mapa do Google ou sem um mapa. Se você quiser exibir os resultados do SDK do Maps para Android em um mapa, esses resultados precisarão ser exibidos em um mapa do Google. É proibido usar os dados do SDK do Maps para Android em um mapa que não seja 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.

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

Siga estas instruções para recuperar atribuições de terceiros e exibir as atribuições no seu aplicativo.

Recuperar atribuições de um lugar

Se o app exibe informações recebidas ao chamar get place by ID, ele também precisa exibir atribuições de terceiros para os detalhes do lugar recebidos.

A API retorna um Place. Para recuperar atribuições do Place, chame Place.getAttributions(). O método retornará uma String ou uma string em branco se não houver atribuições para exibir.

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());
    textView.append("Attributions: " + place.getAttributions());
}).addOnFailureListener((exception) -> {
    if (exception instanceof ApiException) {
        // Handle the error.
    }
});

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 PhotoMetadata.getAttributions(). O método retornará uma sequência de caracteres HTML ou uma string vazia se não houver atribuições a exibir.

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

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

Exibir atribuições de terceiros

As atribuições para provedores de terceiros contêm conteúdo e links no formato HTML que precisam ser preservados e exibidos ao usuário no formato em que são fornecidos. O Google recomenda exibir essas informações abaixo dos detalhes do lugar.

A API gera atribuições para todos os locais que são usados pelo app. As atribuições são fornecidas por chamada de API, não por local.

Uma maneira de exibir as atribuições é com um TextView. Exemplo:

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

Exemplo de uma atribuição de terceiros

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

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 Maps para Android.

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.

Google
#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.

Google
#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;