Configuração de projeto atual

Esta página descreve como configurar um projeto Android atual para usar o SDK do Maps para Android ao usar um tipo de projeto diferente do Google Maps. Para criar um novo app que usa o tipo de projeto do Google Maps, consulte Primeiros passos.

Visão geral

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

  1. Instale o Android Studio.
  2. Instale e configure o SDK do Google Play Services, que inclui o SDK do Maps para Android. Observação: se você usa o SDK do Maps para Android com uma licença de plano premium da Plataforma Google Maps, faça o download do SDK do plano premium 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 com um certificado de assinatura do app.
  4. Adicione as configurações necessárias ao manifesto do app.
  5. Adicione a dependência do Maps ao arquivo build.gradle no nível do app.

Veja a seguir mais detalhes sobre cada etapa do processo.

Fazer o download do Android Studio

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

Instalar o SDK do Google Play Services

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 SDK do Google Play Services usando o SDK Manager para Android.

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

Gerar uma chave de API Google Maps

  1. Ative o faturamento no seu projeto. Para ver os detalhes, consulte Como criar uma conta de faturamento.
  2. No Console do Cloud, ative o SDK do Maps para Android para seu projeto. Se quiser ver mais detalhes, consulte como ativar APIs.
  3. Siga o guia Acessar uma chave de API para receber, adicionar e restringir uma chave de API.

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

Edite o arquivo AndroidManifest.xml do app 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 app adicionando os componentes <uses-permission> como filhos do elemento <manifest> em AndroidManifest.xml.

Permissões de localização

Se o seu app 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 SDK do Google Play Services, não precisará mais da permissão WRITE_EXTERNAL_STORAGE para usar o SDK do Maps para Android.

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

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

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

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ê use 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.

Adicionar a dependência do Maps

No arquivo build.gradle no nível do app, adicione a dependência do Maps:

dependencies {
    implementation 'com.google.android.gms:play-services-maps:17.0.0'
    // ...
}

Próximas etapas

Depois de configurar o projeto, você poderá adicionar um mapa.