Configuração do projeto

Como sequência do guia de primeiros passos, descrevemos nesta página toda a configuração necessária do projeto de desenvolvimento ao usar o Maps SDK for Android no seu app para Android.

Visão geral

O processo geral de adição de um mapa a um Aplicativo para Android é o seguinte:

  1. Instale o Android Studio.
  2. Instale e configure o Google Play Services SDK, que inclui o Maps SDK for Android. Observação: se você usa o Maps SDK for Android com uma licença do plano Premium da Plataforma Google Maps, faça o download do SDK desse plano e configure-o.
  3. Gere uma chave de API. Para fazer isso, você precisará registrar um projeto no Console do Google Cloud Platform, criar uma chave de API e restringi-la usando o certificado de assinatura do app.
  4. Adicione as configurações necessárias ao manifesto do aplicativo.

Veja a seguir mais detalhes sobre cada etapa do processo.

Etapa 1. Fazer download do Android Studio

Siga os guias de download e instalação do Android Studio.

Etapa 2. Instalar o Google Play Services SDK

Você precisará de um projeto do Android para seu app se quiser concluir as etapas desta seção. Se ainda não tiver um Aplicativo para Android, siga o guia de criação de um app "Olá, mundo". Consulte o artigo que explica como elaborar um projeto desse tipo.

O Maps SDK for Android é distribuído como parte do Google Play Services SDK. É possível fazer o download do Google Play Services SDK usando o Android SDK Manager.

Para ver instruções detalhadas, consulte a documentação do Google Play Services.

Gerar uma chave de API Google Maps

Se você quiser usar o Maps SDK for Android, registre o projeto do seu app no Console do Google Cloud Platform para gerar uma chave de API do Google que pode ser adicionada ao app.

Para mais detalhes, consulte o guia Acessar uma chave de API.

Adicionar as configurações necessárias ao manifesto do seu app

Edite o arquivo AndroidManifest.xml do aplicativo e adicione as configurações a seguir.

Especificar o número da versão do Google Play Services

Inclua a seguinte declaração no elemento <application> do AndroidManifest.xml. Isso irá incorporar a versão do Google Play Services com que o app foi compilado.

<meta-data
    android:name="com.google.android.gms.version"
    android:value="@integer/google_play_services_version" />

Especificar sua chave de API

Inclua essa chave no arquivo AndroidManifest.xml, conforme descrito no guia Gerar uma chave de API.

Especificar as permissões do Android

Especifique quais permissões são necessárias para seu aplicativo adicionando os componentes <uses-permission> como filhos do elemento <manifest> em AndroidManifest.xml.

Permissões de localização

Se seu aplicativo acessa o local atual do usuário ativando a camada "My Location", solicite permissões de localização, conforme descrito no guia sobre dados de local.

Permissão de armazenamento externo

Se você segmentar a versão 8.3 ou superior do Google Play Services SDK, não precisará mais da permissão WRITE_EXTERNAL_STORAGE para usar o Maps SDK for Android.

Se você segmentar as versões anteriores do Google Play Services SDK, solicite a permissão android.permission.WRITE_EXTERNAL_STORAGE.

<uses-permission
        android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

Observação: se seu app segmenta o nível de API 23 (Android 6.0), que exige o uso de permissões de tempo de execução, você precisa referenciar a versão 8.3 ou superior do Google Play Services SDK.

Permissões incorporadas automaticamente ao seu manifesto

As permissões a seguir são definidas no manifesto do Google Play Services e automaticamente incorporadas ao manifesto do seu app no tempo de compilação. Você não precisa adicioná-las explicitamente:

Especificar o requisito para a versão 2 do OpenGL ES

O Maps SDK for Android usa a versão 2 do OpenGL ES para renderizar o mapa. A configuração a seguir é definida no manifesto do Google Play Services e é vinculada automaticamente ao manifesto do seu app no tempo de compilação. Você não precisa adicioná-la explicitamente:

<uses-feature
        android:glEsVersion="0x00020000"
        android:required="true"/>

Com isso, os requisitos são informados aos serviços externos, e a Google Play Store é impedida de exibir o app em dispositivos não compatíveis com a versão 2 do OpenGL ES.

Especificar o requisito para a biblioteca Apache HTTP Legacy

Se você estiver usando com.google.android.gms:play-services-maps:16.0.0 ou versões anteriores, e seu app segmentar o nível de API 28 (Android 9.0) ou superior, inclua a seguinte declaração no elemento <application> do AndroidManifest.xml.

  <uses-library
      android:name="org.apache.http.legacy"
      android:required="false" />

Isso é feito automaticamente caso você utilize com.google.android.gms:play-services-maps:16.1.0, mas não será necessário se o app segmentar um nível mais baixo.