Tutorial Google Maps Android API v2

 

Antes de começar a trabalhar com a API, você vai precisar baixar a API  e obter a chave. Tanto a API quanto a chave estão disponíveis gratuitamente.

Configurando o ambiente

O Google Maps API Android V2 é distribuído como parte do Google Play services SDK . Siga os passos abaixo para instalar o Google Play Services SDK para o desenvolvimento com o Eclipse:

1. Selecione no menu do ecplise Window > Android SDK Manager

2. Vá até a parte inferior da lista de pacotes, selecione Extras> Google Play Services, e instale-o;

3. Copie o <android-sdk-folder>/extras/google/google_play_services/libproject/google-play-services_lib  library project para a pasta onde você criou seu projeto android;

4. Usando o Eclipse, importe o projeto de biblioteca em sua workspace. Clique em File> Import, selecione Android > Existing Android Code into Workspace  e vá para a cópia do projeto de biblioteca Google Play Service para importá-lo;

5. Vá em Properties do seu projeto (Clique com o botão direito no seu projeto) e selecione o menu “Android“;

6. Clique no botão [Add…] e na caixa de diálogo “Project Selection” selecione o projeto google-play-services-lib que foi importado anteriormente;

Tutorial Google Maps para Android

Nota: O Google Play Services não é compatível com o emulador Android

 

Obtendo a chave Map Api Key

O Google Maps API v2 Android usa um novo sistema de gerenciamento de chaves. Chaves existentes de um aplicativo Android Google Maps v1 não vão funcionar com a API v2.

Obter uma chave para a sua aplicação requer várias etapas. Estes passos são descritos aqui, e descritos em detalhe nas seções seguintes.

1. Recuperar informações sobre o certificado de sua aplicação (SHA-1 fingerprint).

A chave do Google Maps API é baseada em um pequeno formulário de certificado digital do seu aplicativo, conhecido como SHA-1 fingerprint. A fingerprint é uma seqüência de texto único, gerado a partir do algoritmo comumente usado SHA-1 hashing. Porque a fingerprint é única, o Google Maps pode usa-lo como uma forma de identificar a sua aplicação.

Você pode gerar a chave a partir de dois tipos de certificados:

Debug certificate: 

O certificado é apenas para uso de um aplicativo que você está testando, você não pode publicar um aplicativo que está assinado com um certificado de depuração. O certificado de depuração é descrito com mais detalhes na seção Signing in Debug Mode da Documentação de desenvolvedor Android. Você pode gerar uma chave de API a partir deste certificado, mas apenas usar a chave para o teste, nunca para a produção.

Exibindo o fingerprint para chave de debug:
1.1 Localize o arquivo de debug keystore. O nome do arquivo é debug.keystore, e é criado a primeira vez que você cria seu projeto. Por padrão, ele é armazenado no mesmo diretório do seu dispositivo AVD:
Usando o Eclipse selcione Windows > Prefs > Android > Build  para verificar o caminho completo (Default debug keystore);
1.2 Usando o Terminal do windows (cmd) navegue até a pasta bin do jdk da sua máquina para ter acesso aos comandos Keytool
1.3 Execute a seguinte linha de comando subistituindo o caminho do arquivo debug.keystore pelo seu visualizado anteriormente:

keytool -list -v -keystore “C:Usersyour_user_name.androiddebug.keystore” -alias androiddebugkey -storepass android -keypass androidCaso você tenha ma exceção de formato no keystore, você deve alterar as configurações regionais do seu Windows colocando Formato e Local para Estados Unidos

1.4 Você deverá ver uma saída semelhante a esta e dentre as informações você já pode ver seu SHA-1 fingerprint

Alias name: androiddebugkey
Creation date: Jan 01, 2013
Entry type: PrivateKeyEntry
Certificate chain length: 1
Certificate[1]:
Owner: CN=Android Debug, O=Android, C=US
Issuer: CN=Android Debug, O=Android, C=US
Serial number: 4aa9b300
Valid from: Mon Jan 01 08:04:04 UTC 2013 until: Mon Jan 01 18:04:04 PST 2033
Certificate fingerprints:
MD5:  AE:9F:95:D0:A6:86:89:BC:A8:70:BA:34:FF:6A:AC:F9
SHA1: BB:0D:AC:74:D3:21:E1:43:07:71:9B:62:90:AF:A1:66:6E:44:5D:75
Signature algorithm name: SHA1withRSA
Version: 3

Release certificate:

  •  Este certificado pode ser usado com o aplicativo que você queira publicar em produção.

Depois de decidir qual o certificado correto para suas necessidades, você pode obter a chave seguindo este outro tutorial…
2. Registrar um projeto no Google APIs Console e adicionar a API do Google Maps como um serviço para o projeto.

2.1 Acesse Google APIs Console

2.3 Se você não usou o Google APIs Console antes, você será solicitado a criar um projeto que você usará para controlar o uso do Google Maps API Android. Clique em Create Project e crie um novo projeto chamado Projeto API. Na próxima página, este nome aparece no canto superior esquerdo. Para renomear ou gerenciar o projeto, clique em seu nome.
Se você já está usando o Google APIs Console, você vai ver imediatamente uma lista de seus projetos existentes e os serviços disponíveis. Ainda é uma boa ideia usar um novo projeto para o Google Maps API Android, portanto, selecione o nome do projeto no canto superior esquerdo e, em seguida, clique em Create.

3. Uma vez que você tem um projeto definido, você pode solicitar uma ou mais chaves.

3.1Você deverá ver uma lista de APIs e serviços na janela principal. Se você não estiver vendo isso, selecione Services da barra de navegação à esquerda.

3.2 Na lista de serviços exibidos no centro da página, role para baixo até ver o Google Maps API v2 Android. Clique no indicador de “interruptor”, de modo que ele está ligado.

3.3 Aceite os termos de Serviços e estará pronto para ter uma Maps API Key.

3.4 Na barra de navegação à esquerda, clique em API Access.

3.5 Clique no botão [Create New Android Key…]

3.6 Na caixa de diálogo, digite o  SHA-1 fingerprint, em seguida, um ponto e vírgula, em seguida, o nome do pacote do aplicativo. Por exemplo:

BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:91:AF:A1:66:6E:44:5D:75;com.frameworksystem.android.mapexample

O Google APIs Console responde exibindo-chave para aplicativos Android (com certificados), seguido por uma chave, por exemplo:

AIzaSyBdVl-cTICSwYKrZ95SuvNw7dbMuDt1KG0

4. Finalmente, você pode adicionar a sua chave para a sua aplicação e iniciar o desenvolvimento.

Adicionando a API Key em sua aplicação

O passo final é adicionar a chave da API para a sua aplicação.

1. Em AndroidManifest.xml, adicione o seguinte elemento como um filho do elemento application, inserindo-lo antes da tag de fechamento </ application>:
<meta-data android:name=”com.google.android.maps.v2.API_KEY” android:value=”your_api_key”/>

2. substitua “your_api_key” Pela sua chave API Key obtida anteriormente.

3. Adicione os seguintes elementos para o seu AndroidManifest.xml. Substitua com.frameworksystem.android.mapexample com o nome do pacote da sua aplicação.

<permission android:name=”com.example.mapdemo.permission.MAPS_RECEIVE” android:protectionLevel=”signature”/>
<uses-permission android:name=”com.frameworksystem.android.mapexample.permission.MAPS_RECEIVE”/>

4. Especifique as seguintes permissões no AndroidManifest.xmlsubstituindo com.frameworksystem.android.mapexample pelo pacote da sua aplicação:
<uses-permission android:name=”android.permission.INTERNET” />
<uses-permission android:name=”android.permission.ACCESS_COARSE_LOCATION” />
<uses-permission android:name=”android.permission.ACCESS_FINE_LOCATION” />
<uses-permission android:name=”android.permission.ACCESS_NETWORK_STATE” />
<uses-permission android:name=”android.permission.WRITE_EXTERNAL_STORAGE”/>
<uses-permission android:name=”com.google.android.providers.gsf.permission.READ_GSERVICES”/>

<permission android:name=”br.com.cadastroindustrial.permission.MAPS_RECEIVE”
android:protectionLevel=”signature”/>
<uses-permission android:name=”com.frameworksystem.android.mapexample.permission.MAPS_RECEIVE”/>

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

Desenvolvendo um Mapa

1.  Implement a seguinte Activity:

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;

import com.google.android.gms.maps.CameraUpdateFactory;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.MapFragment;
import com.google.android.gms.maps.model.BitmapDescriptorFactory;
import com.google.android.gms.maps.model.LatLng;
import com.google.android.gms.maps.model.Marker;
import com.google.android.gms.maps.model.MarkerOptions;

public class MainActivity extends Activity {
  private LatLng frameworkSystemLocation = new LatLng(-19.92550, -43.64058);
  private GoogleMap map;

  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    map = ((MapFragment) getFragmentManager().findFragmentById(R.id.map))
        .getMap();
    Marker frameworkSystem = map.addMarker(new MarkerOptions()
                                               .position(frameworkSystemLocation)
                                               .title("Framework System"));
    // Move a câmera para Framework System com zoom 15. 
    map.moveCamera(CameraUpdateFactory.newLatLngZoom(frameworkSystemLocation , 15));
    map.animateCamera(CameraUpdateFactory.zoomTo(10), 2000, null);
  }

  @Override
  public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.activity_main, menu);
    return true;
  }

}

 

2. Implemente o seguinte layout para a Activity

;

    ;

 

Observações:

Pessoal, as estruturas de Fragment do android foram criadas na versão 3.0.
Para aplicações feitas com versões anteriores do android existe a biblioteca android-support-v4.jar que oferece suporte a estrutura de Fragment e outras novas implementações para as versões anteriores do android.

Para adicionar a biblioteca de suporte em sua aplicação, usando o eclipse vá em Properties do seu projeto (Clique com o botão direito no seu projeto) e selecione Android Tools > Add Support Library… marque Accept All e clique no botão [ Install ]

Feito isso sua Activity agora deve estender de FragmentActivity e para instanciar o objeto map (private GoogleMap map) deverá ser feito as seguintes alterações:

map = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map)).getMap();

Se você quiser saber mais sobre programação Java, .Net, Android, IOS, Banco de Dados, Análise de Sistemas, Pontos de Função, faça nossos treinamentos e conheça a Framework Training Center – Comprometimento em Qualidade de Ensino.

 

41 Comments

  • Trackback: Gerando Key Google Maps Android Map Key
  • Wilian Posted 10/05/2013 10:16

    Deu tudo certo até a parque de configurar o Manisfest:

    erro: string types not allowed “0×00020000”

    e eu nao consigo importar :import com.google.android.gms.maps

    no meu sdk só aparece
    com.google.android.maps (sem o gms)
    Pode me ajudar?

    • Gustavo Amaro Posted 14/08/2013 16:41

      Substitua o “×” por “x”… quando você copia vem como caractere especial !!!!

    • hernando Posted 30/08/2013 21:22

      Mesmo problema aqui, erro: string types not allowed “0×00020000″

    • hernando Posted 30/08/2013 21:23

      tem que ajeitar o x… pq quando copia ele copia um X diferente, troque o x que da certo! =) ( redigite ‘0x00020000’

  • Wilian Posted 10/05/2013 10:17

    O Tutorial esta excelente, eu que estou tendo dificuldades
    Parabens pelo post!

  • Geraldo Neto Posted 10/05/2013 10:59

    Você deve ter percebido que quando se copia o código do blog o caractere ” (aspas) fica com erro na ide porque tem um charset diferente. Pelo que vi o mesmo acontece com o caractere “x”, tente digitar manualmente o x na ide.

  • Robert Posted 11/05/2013 17:49

    Também aconteceu esse erro comigo, mas corrigi depois do comentário acima. Mas o problema que tenho é com o getManager() esta dando um erro de método não identificado, como posso resolver ? Por favor me ajude sou iniciante.

    • Geraldo Neto Posted 13/05/2013 14:23

      Seu problema deve ser o mesmo do Wilian, confira as observações que adicionei no final do post.

  • Wilian Posted 13/05/2013 11:44

    Era isso mesmo Geraldo Neto, obrigado pelo Reply
    se puder me dar mais uma ajuda.
    o eclipse nao encontrou o metodo
    “getFragmentManager”

    map = ((MapFragment) getFragmentManager().findFragmentById(R.id.map))
    .getMap();

    • Geraldo Neto Posted 13/05/2013 14:21

      Este problema de não reconhecer o getFragmentManager provavelmente é por causa da versão do android ser anterior a 3.0.

      Coloquei algumas observações no final do post para resolver isso.

  • Wilian Posted 13/05/2013 15:56

    Nossa, exatamente man.
    Parabens pelo post, e muito obrigado pela atenção.
    De verdade, é muito bom ver como tem gente que leve a serio e é atencioso com o que publica. Além de ta tudo muito explicado, voce ainda responde os comentarios bem rapido, da pra ver a boa intenção.
    Parabens mesmo!
    Abraços, Wilian.

    • Geraldo Neto Posted 13/05/2013 17:20

      Obrigado! Que bom que ajudou mesmo!
      Continuem visitando o blog pra incentivar a manter atualizado..

  • Adalton Posted 15/05/2013 00:38

    Segui todos os passos conforme o tutorial. Porém quando vou publicar em meu celular a aplicação abre a tela em branco e alguns segundos depois aparece a mensagem: “A aplicação parou inesperadamente. Tente novamente.”

    Eu já revi todos os passos do tutorial e não deixei nenhum passo ser executado. Vc poderia me ajudar?

  • Adalton Posted 15/05/2013 01:18

    Geraldo, com intuito de ajudar aos leitores do blog. Consegui solucionar o meu problema.

    Quando fazemos o ajuste para utilizar android-support-v4.jar temos que alterar o elemento fragment para utilizar a class “SupportMapFragment”:

  • Geraldo Neto Posted 15/05/2013 09:15

    Isso memso Adalton, Obrigado!

  • Amilton Posted 20/05/2013 16:08

    Boa tarde.

    Tentei seguir alguns artigos espalhados pela net a fim de rodar uma app com Maps num Emulador Android, porém não consegui. Seria interessante se pudesse repassar tal informação em algum outro artigo. Seria possível?

    Parabéns pelo artigo.

  • Geraldo Neto Posted 20/05/2013 16:29

    Boa tarde Amilton,
    na documentação da Google Maps Android API v2 colocaram uma nota falando que o Google Play Services não é compatível com o emulador Android.

    Então ainda não é possível testar sua implementação de mapa no emulador.

    • Amilton Posted 20/05/2013 16:39

      Geraldo, boa tarde.
      Obrigado pelo retorno.
      Segue link p/ um dos artigos os quais me referi como “espalhados pela net”:
      http://saleh360.blogspot.in/2012/12/android-running-google-maps-api-v2_12.html
      Se você ou alguém mais pudesse tentar por em prática o que diz neste artigo, bastaria p/ eu saber se estou fazendo algo errado ou se realmente não é possível rodar.
      Aguardo retorno novamente.
      Um abraço.

  • Valério Posted 28/05/2013 02:07

    Poxa o meu deu o mesmo erro do Adalto, tela toda branca e depois de o tempo a aplicação para já tentei trocar a class do fragment e nada. O que faço ?

  • Geraldo Neto Posted 28/05/2013 15:13

    Valério, precisa saber mais detalhes sobre o erro.

  • Anderson Posted 26/06/2013 16:01

    Olá Geraldo estou acompanhando seu artigo. Deu tudo certo mas quando o mapa aparece no celular ele fica sem as coordenadas aparece até o sinal de zoom do mapa mas não aparece o conteudo do mapa.

    • Geraldo Neto Posted 27/06/2013 09:53

      Anderson, normalmente quando não aparece o conteúdo do mapa pode ser algum problema com a chave. Se for esse o caso tente obter novamente a chave, mas confira tudo o que passa no logcat para ver se a api retorna alguma mensagem que possa ajudar.

  • Anderson Posted 27/06/2013 20:38

    Agora deu certo, foi falha minha tinha ligado o service Google Maps API v2 e o correto é o Google Maps Android API v2. Mesmo assim agradeço pela resposta

    • Geraldo Neto Posted 28/06/2013 08:41

      Muito bom!

  • Juliano Posted 27/06/2013 22:59

    Belo artigo! parabéns!

    No emulador estou tendo o seguinte erro ao executar:

    06-28 01:57:20.624: E/Google Maps Android API(1137): Google Maps Android API v2 only supports devices with OpenGL ES 2.0 and above

    06-28 01:57:22.541: W/EGL_emulation(1137): eglSurfaceAttrib not implemented

    No aparelho milestone 3 funciona sem problemas…

    • Geraldo Neto Posted 28/06/2013 08:52

      Obrigado Juliano!
      Na documentação da google diz que a API V2 não funciona no emulador mesmo, até coloquei uma pequena nota no post falando isso.
      Nos comentários aí pra cima o Amilton mostrou um link de alguém ensinando a rodar o mapa no emulador só não tive tempo ainda de testar se funciona mesmo. Caso queira tentar esse é o link http://saleh360.blogspot.in/2012/12/android-running-google-maps-api-v2_12.html

  • Vitor Posted 09/07/2013 01:59

    Um absurdo. Baixa SDK, baixa Library, gera chave, programa em MapActivy e depois descobre que a API que você criou só serve para a V2 do Google Maps. Depois que gasta mais 3 dias intensos tentando fazer um parser JSON funcionar, e percebe que não é possível fazer uma requisição Http dentro da classe Activity – As chamadas devem ser feitas em uma Background, em OUTRA classe, implementando mais um MONTE DE COISA. Vou ser humilde e dizer que ODIEI programar para Android. Passei mais tempo visitando StackOverFlow do que programando no Eclipse. E outra, que IDE dos infernos hein… p/ ser ruim tem que melhorar MUITO…. inferno

  • Leandro Posted 10/07/2013 10:32

    Geraldo,

    Primeiramente agradeço pelo post, ajudou muito…
    Tenho uma dúvida…
    GPS do celular só funciona com WIFI ou 3g ? Pois, qnd desligo a internet do meu celular não consigo pegar a minha localização !

  • Wagner Silva Posted 21/07/2013 16:57

    Olá Geraldo,
    Primeiramente gostaria de te parabenizar pelo material e pelo site e dizer que este tutorial foi bem montando com muitos detalhes, é de uma grande qualidade mesmo.
    Segundo, seguindo seu tutorial, consegui montar um modelinho para fazer um teste com maps no meu Milestone, claro que fiz algumas modificações, mas com não ocorreram erro de codificação. Gerei uma key para este projeto em especifico, o app até carrega no aparelho, porém, em não carrega o mapa, fica a tela em branco. no log notei que ao final do carregamento há um warning e acho que ai que esta o problema, segue:
    07-21 16:42:57.124: I/Google Maps Android API(10599): Failed to contact Google servers. Another attempt will be made when connectivity is established.

    Agora gostaria de saber de você se já pegou algum problema deste e se poderia me ajudar a sanar com este problema?

    • Geraldo Neto Posted 22/07/2013 08:49

      Wagner Silva, isso já aconteceu comigo sim algumas vezes e sempre foi algum problema com a key. As vezes parece ser até algum problema na compilação mas tente gerar outra chave para o maps e execute novamente.

  • Max Posted 21/07/2013 20:30

    Muito Bom Tutorial Valeu!

  • Max Posted 21/07/2013 20:31

    Funcionou perfeito Muito Bom Tutorial
    Valeu Abraço..

    • Geraldo Neto Posted 22/07/2013 08:53

      Muito obrigado Max! Volte sempre xD

  • Adriano Posted 01/08/2013 16:07

    Boa Tarde, tenho uma aplicação com o google maps baseado no seu tutorial, e quando estava em fase de testes meu mapa estava abrindo perfeitamente no dispositivo real, depois de testado, eu publiquei o aplicativo no google play e quando baixo a mesma aplicação pelo google play o mapa não incializa poderia por gentileza me dar uma luz do que pode estar ocorrendo? Grato desde já

  • Agnaldo Posted 09/08/2013 10:36

    Melhor post que encontrei sobre o assunto! Parabéns. Porém estou com um problema: a aplicação inicia porém não aparece o mapa. No console fica dando o seguinte erro: java.io.IOException: Server returned: 3. Já pesquisei e esse erro pode ser por causa da API KEY incorreta. Só que estou utilizando a debug.keystore para testar a aplicação, já adicionei a SHA-1 e o pacote no Google Console API mas não tem jeito de funcionar. Alguém ja passou por isso?

  • Trackback: Tutorial Google Maps Android API v2 | Spigando e Aprendendo
  • Felipe Posted 29/08/2013 14:10

    Ola Geral!! Meus parabens!! Excelente tutorial!!

    Porem não consegui rodar usando android 2.2.
    Adicionei a lib de suporte v4, e compilou direitinho , porem mostra o seguinte erro:

    08-29 13:50:50.387: E/AndroidRuntime(13133): FATAL EXCEPTION: main
    08-29 13:50:50.387: E/AndroidRuntime(13133): java.lang.RuntimeException: Unable to start activity ComponentInfo{fm.googlemaps.com.br/fm.googlemaps.com.br.MainActivity}: android.view.InflateException: Binary XML file line #7: Error inflating class fragment
    08-29 13:50:50.387: E/AndroidRuntime(13133): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1696)
    08-29 13:50:50.387: E/AndroidRuntime(13133): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1721)
    08-29 13:50:50.387: E/AndroidRuntime(13133): at android.app.ActivityThread.access$1500(ActivityThread.java:124)
    08-29 13:50:50.387: E/AndroidRuntime(13133): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:968)
    08-29 13:50:50.387: E/AndroidRuntime(13133): at android.os.Handler.dispatchMessage(Handler.java:99)
    08-29 13:50:50.387: E/AndroidRuntime(13133): at android.os.Looper.loop(Looper.java:130)
    08-29 13:50:50.387: E/AndroidRuntime(13133): at android.app.ActivityThread.main(ActivityThread.java:3844)
    08-29 13:50:50.387: E/AndroidRuntime(13133): at java.lang.reflect.Method.invokeNative(Native Method)
    08-29 13:50:50.387: E/AndroidRuntime(13133): at java.lang.reflect.Method.invoke(Method.java:507)
    08-29 13:50:50.387: E/AndroidRuntime(13133): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
    08-29 13:50:50.387: E/AndroidRuntime(13133): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
    08-29 13:50:50.387: E/AndroidRuntime(13133): at dalvik.system.NativeStart.main(Native Method)
    08-29 13:50:50.387: E/AndroidRuntime(13133): Caused by: android.view.InflateException: Binary XML file line #7: Error inflating class fragment
    08-29 13:50:50.387: E/AndroidRuntime(13133): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:581)
    08-29 13:50:50.387: E/AndroidRuntime(13133): at android.view.LayoutInflater.rInflate(LayoutInflater.java:623)
    08-29 13:50:50.387: E/AndroidRuntime(13133): at android.view.LayoutInflater.inflate(LayoutInflater.java:408)
    08-29 13:50:50.387: E/AndroidRuntime(13133): at android.view.LayoutInflater.inflate(LayoutInflater.java:320)
    08-29 13:50:50.387: E/AndroidRuntime(13133): at android.view.LayoutInflater.inflate(LayoutInflater.java:276)
    08-29 13:50:50.387: E/AndroidRuntime(13133): at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:260)
    08-29 13:50:50.387: E/AndroidRuntime(13133): at android.app.Activity.setContentView(Activity.java:1716)
    08-29 13:50:50.387: E/AndroidRuntime(13133): at fm.googlemaps.com.br.MainActivity.onCreate(MainActivity.java:22)
    08-29 13:50:50.387: E/AndroidRuntime(13133): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
    08-29 13:50:50.387: E/AndroidRuntime(13133): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1660)
    08-29 13:50:50.387: E/AndroidRuntime(13133): … 11 more
    08-29 13:50:50.387: E/AndroidRuntime(13133): Caused by: java.lang.ClassNotFoundException: android.view.fragment in loader dalvik.system.PathClassLoader[/data/app/fm.googlemaps.com.br-2.apk]
    08-29 13:50:50.387: E/AndroidRuntime(13133): at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:240)
    08-29 13:50:50.387: E/AndroidRuntime(13133): at java.lang.ClassLoader.loadClass(ClassLoader.java:551)
    08-29 13:50:50.387: E/AndroidRuntime(13133): at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
    08-29 13:50:50.387: E/AndroidRuntime(13133): at android.view.LayoutInflater.createView(LayoutInflater.java:471)
    08-29 13:50:50.387: E/AndroidRuntime(13133): at android.view.LayoutInflater.onCreateView(LayoutInflater.java:549)
    08-29 13:50:50.387: E/AndroidRuntime(13133): at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:66)
    08-29 13:50:50.387: E/AndroidRuntime(13133): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:568)
    08-29 13:50:50.387: E/AndroidRuntime(13133): … 20 more

    Consegue me dizer o que preciso fazer ?

  • João Batista Ladchuk Posted 30/09/2013 21:46

    Primeiramente parabéns pelo artigo!
    Esta funcionando corretamente, roda no emulador e funciona mapa perfeitamente contudo quando vou rodar no celular fica uma pagina um tela branca, ja segui milhares de tutorias mas nada funcionou ja alterei a api key mas ate agora nada, pode me ajudar?

  • Adriano Posted 01/10/2013 10:10

    João Batista Ladchuk, tive um problema parecido com o seu e vamos ver se posso ajudar! Meu aplicativo rodava no emulador ai quando gerei o apk para rodar no celular o mapa parou de ser exibido, após muitas tentativas descobri que era a SHA1 que era alterado quando gerava o apk… Apenas entrei no google api console e fiz a alteração e voltou a funcionar perfeitamente!

Add Comment

Your email address will not be published. Required fields are marked *

Phone: (31) 3646-1612
Fax: (31) 3646-1614
Loja 01, Lourdes, Belo Horizonte/MG
Rua Rio de Janeiro, 1278