Google Maps Android API por onde começar?
Muito acham que usar o Google Maps Android API é muito complicado, porem é relativamente simples para quem já uma certa intimidade com desenvolvimento para Android.
Bom mas por onde começar? Primeiro acesse o link https://console.developers.google.com/project e crie um projeto para o seu app, que ira utilizar o Google Maps Android API:
Após criar o projeto, habilite a API do Google Maps no seu projeto através do link "Google Maps Android API":
Ative a API selecionando a opção "Enable":
Pronto acabou? Não, tem que gerar a chave de acesso do seu app para a API, para fazer isso selecione a opção "Credenciais":
Após todo esse processo você ira chegar nessa tela:
Para ter a chave SHA1 do seu certificado de desenvolvedor, execute o comando abaixo:
keytool -list -v -keystore suakeystore.keystore
Geralmente a keystore de desenvolvimento fica na pasta .android, localizada no diretório home do usuário, no meu caso o nome do arquivo é debug.keystore:
Com o SHA1 em mãos voltamos para a tela da criação da chave e selecionamos "Criar", esperamos um pouco e tchram, temos a chave de acesso:
Guarde a chave em algum local, porque ela vai garantir o acesso do seu app ao Google Maps Android API.
E agora no Android Studio o que temos que fazer? Corre lá pegar um café e se prepara que demora #sqn
Primeira coisa que deve ser feita é colocar no seu arquivo do gradle a seguinte dependência:
compile 'com.google.android.gms:play-services-maps:8.4.0'
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.1.1'
compile 'com.google.android.gms:play-services-maps:8.4.0'
}Adiciona as permissões no seu AndroidManifest.xml:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission
android:name="android.permission.WRITE_EXTERNAL_STORAGE"
android:maxSdkVersion="22" />
<uses-permission
android:name="android.permission.READ_EXTERNAL_STORAGE"
android:maxSdkVersion="22" />
Adicione também a meta-data dentro do application:
<meta-data
android:name="com.google.android.geo.API_KEY"
android:value="@string/google_maps_key" />
No arquivo string.xml adicione a tag:
<string name="google_maps_key">AQUI_VOCE_COLOCA_A_CHAVE_GERADA_NO_CONSOLE</string>
Agora vamos criar um xml de layout, e insira o trecho de código abaixo para exibir o fragmento do mapa no seu app:
<?xml version="1.0" encoding="utf-8"?>
<fragment xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/map"
android:layout_width="match_parent"
android:layout_height="match_parent"
class="com.google.android.gms.maps.SupportMapFragment" />
Crie uma classe onde vai carregar o mapa, configure ela no manifest e adicione os seguintes trechos de código:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
SupportMapFragment mapFragment =
(SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
mapFragment.getMapAsync(this);
}
@Override
public void onMapReady(GoogleMap map) {2
map.addMarker(new MarkerOptions().position(new LatLng(-25.443150, -49.238243)).title("Jardim Botânico"));
}
E finalmente chegamos ao final, seu app já vai estar funcionando e ira exibir a tela abaixo:
O que podemos fazer a mais, podemos adicionar mais "makers" e ajustar o zoom da câmera com o seguinte código:
map.moveCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(latitude, longitude), 11));
Também podemos mostrar a localização atual do dispositivo:
map.setMyLocationEnabled(true);
Informações de tráfico:
map.setTrafficEnabled(true);
Temos mais opções que podem ser habilitadas no mapa como, exbir os botões de zoom, bússola, trocar a imagem dos "makers". Todas essas outras funcionalidades você pode encontrar exemplos nos demos e na documentação do Google Maps Android API.
Links
Código fonte desse app demo
Contribute to GoogleMapsAndroidAPI development by creating an account on GitHub.github.com
Demos de outras implementações do Google Maps Android API
android-samples - Samples demonstrating how to use Google Maps Android API v2.github.com
Documentação da Google Maps Android API
Adicione o Google Maps ao seu aplicativo para Android.developers.google.com
Espero que eu tenha ajudado, qualquer dúvida só mandar no twitter ou nos comentários aqui.
Abraço do Gordinho ;)