Projeto em Android não exibe mapa, mesmo com Api Key correta [RESOLVIDO]

Olá pessoal.

Criei um projeto que detecta o range (em Km) de todos os 21 zooms do Google Maps do Android. Para isso, para cada tela renderizada na tela (à cada mudança de zoom), calculo a distância geodésica dos pontos mais extremos da tela (superior e inferior).

O mapa estava sendo mostrado na tela, sem problemas. Porém, renomeei o pacote do meu projeto, de br.android.teste.maprangetracker para br.android.teste.maptracker, e o mapa parou de ser mostrado na tela. Muito bizarro isso! Tentei mudar novamente para o pacote antigo, mas o mapa continuou não sendo mostrado.

Gostaria de saber se isso já aconteceu com vocês alguma vez, e se sim, o que devo fazer para esta bizarrice parar.

Mando o meu projeto no link abaixo. Ele possui apenas 4 classes principais, e 2 telas. Nada demais. É um projeto pequeno, de teste.

http://www.4shared.com/rar/kNg2OiX1/MapRangeTracker.html

[quote=graffiti75]Olá pessoal.

Criei um projeto que detecta o range (em Km) de todos os 21 zooms do Google Maps do Android. Para isso, para cada tela renderizada na tela (à cada mudança de zoom), calculo a distância geodésica dos pontos mais extremos da tela (superior e inferior).

O mapa estava sendo mostrado na tela, sem problemas. Porém, renomeei o pacote do meu projeto, de br.android.teste.maprangetracker para br.android.teste.maptracker, e o mapa parou de ser mostrado na tela. Muito bizarro isso! Tentei mudar novamente para o pacote antigo, mas o mapa continuou não sendo mostrado.

Gostaria de saber se isso já aconteceu com vocês alguma vez, e se sim, o que devo fazer para esta bizarrice parar.

Mando o meu projeto no link abaixo. Ele possui apenas 4 classes principais, e 2 telas. Nada demais. É um projeto pequeno, de teste.

http://www.4shared.com/rar/kNg2OiX1/MapRangeTracker.html[/quote]

isso tudo no emulador ?
verifique a sua Key de Debug novamente, se for o caso regere para o fingerprint

Olá aechiara.

Então, acho que não é problema da Api Key, pois diariamente uso Linux, Windows e Mac (ou seja, 3 Api Key’s diferentes), e mesmo assim esse projeto não funciona corretamente. E tudo aconteceu depois de eu renomear a estrutura de pacotes do projeto.

Esse bug é realmente de dar nó na cabeça!

a aplicação executa normalmente ? a view abre ? vc alterou tb o pacote no AndroidManifest.xml ?

Ela abre, exibe o mapa (em branco), e sim, mudei o AndroidManifest.

Acho que vou instalar o Eclipse bruto na máquina, pois o que instalei é o JEE. Vai que dá certo…

[quote=graffiti75]Ela abre, exibe o mapa (em branco), e sim, mudei o AndroidManifest.

Acho que vou instalar o Eclipse bruto na máquina, pois o que instalei é o JEE. Vai que dá certo…[/quote]

quando tive esse problema, da view ficar em branco, era relacionado a Key de Debug, já que vc vai re-instalar o eclipse, verifique na configuração do ADT onde está o repositório de chaves e se é o correto

não da nenhuma mensagem de erro no DDMS ? geralmente quando da algum problema desse tipo, lá diz o que é, ou pelo menos da uma pista

Não dá erro algum. Espero que o novo Eclipse dê jeito nisso.

Se por um acaso você quiser testar meu app, aqui está o link de download.

http://www.4shared.com/rar/jwtIrL9_/MapRangeTracker.html

Então aechiara, não funcionou.

Testei da API 5 até a 10 (sempre com GoogleApi), e nada! É muito bizarro isso. Recriei o projeto com outro nome, e nada. Será que o fato de eu usar um Handler influi em algo?

O que mais me frustra é que nas primeiras execuções após eu criar esse app ele mostrou o mapa certinho. Mas depois de eu renomear os pacotes do projeto (e renomeei corretamente, usando o Refactor), parou de funcionar. Seja em Linux, Unix, Mac ou Windows. Importando, renomeando o projeto, de jeito nenhum o mapa não é renderizado.

Já nem sei mais o que pensar. Estou decepcionado. Meu app realiza o objetivo principal (achar as distâncias entre as latitudes e longitudes do zoom 1 ao 21). Mas mesmo assim, queria que o mapa fosse renderizado, pois fiquei encucado com esse bug louco que surgiu.

[quote=graffiti75]Então aechiara, não funcionou.

Testei da API 5 até a 10 (sempre com GoogleApi), e nada! É muito bizarro isso. Recriei o projeto com outro nome, e nada. Será que o fato de eu usar um Handler influi em algo?

O que mais me frustra é que nas primeiras execuções após eu criar esse app ele mostrou o mapa certinho. Mas depois de eu renomear os pacotes do projeto (e renomeei corretamente, usando o Refactor), parou de funcionar. Seja em Linux, Unix, Mac ou Windows. Importando, renomeando o projeto, de jeito nenhum o mapa não é renderizado.

Já nem sei mais o que pensar. Estou decepcionado. Meu app realiza o objetivo principal (achar as distâncias entre as latitudes e longitudes do zoom 1 ao 21). Mas mesmo assim, queria que o mapa fosse renderizado, pois fiquei encucado com esse bug louco que surgiu.[/quote]

desculpe o sumisso, ainda não resolveu ?
vou dar uma olhada no projeto que vc colocou no 4shared e retorno, estou trabalhando com mapas também, e é um saco

Ainda não resolveu.

Se você está em fase de debug, você deve ir no Manifest e ver se o DEBUGABLE está false.

Outra coisa, se você modificou o pacote, verifique que foi modificado também no manisfesto.

Além disso, você deve importar a biblioteca do Google Maps novamente. Sua API Key é para Debug?

Depois de tudo isso, se não funcionar… FUUUUUUU!

O erro que dá é esse: Couldn’t get connection factory client.

Nem para novos projetos de mapa o mapa está renderizando! Porém, para projetos que eu já tinha criado, o mapa renderiza!

É, não tem jeito. Vou desinstalar o SDK do Android e instalar de novo.

Assim que instalar o novo SDK, e testar um projeto com mapa, avisarei aqui se funcionou.

CONSEGUI!

Para meu aplicativo funcionar, e o erro “Couldn’t get connection factory client” sumir, basta adicionar a linha abaixo ao AndroidManifest:

Por que?

A biblioteca do GoogleMaps foi liberada pelo Google no ano de 2010. Porém, em seus primeiros meses de uso, ela apresentou alguns bugs. Dentre eles, o bug que invoca a mensagem de erro escrita acima.

O post 21 do link abaixo expõe uma sugestão de correção deste bug. Ela foi enviada ao Google no dia 16 de setembro de 2010.

http://code.google.com/p/android/issues/detail?id=8816

No fim das contas, essa sugestão acabou sendo anexada à API de mapas do Google.

Em uma aplicação que utiliza mapas, para o mapa ser renderizado, é preciso obter um serviço via HTTP (diretamente fornecido pelo Google), que retorna um JSON. Este JSON contém dados para fazer o mapa ser renderizado. Então, ele é convertido para GeoPoint. E finalmente, o mapa é renderizado.

Enfim, vou mudar o título desse post para [RESOLVIDO].

Estou com o mesmo problema, só que eu meu aplicativo ja tem adicionado a permissao para internet

<uses-permission android:name=“android.permission.INTERNET”/>
<uses-permission android:name=“android.permission.ACCESS_FINE_LOCATION”/>

alem de usar a key de debug correta

mesmo problema aqui… alguém resolveu ?

se a API Key do maps está correta, e possuí as permissões de acesso só pode ser algum problema no projeto.

Aconselho que criem outro projeto do zero e tentem utilizar o mapa, colocando a API Key e as permissões

algumas informações sobre o ambiente de vocês poderia ajudar (sistema operacional, path para a key, versão do Android, etc.)

[code]
keytool.exe -list -alias androiddebugkey -keystore C:\Users\jr.android\debug.keystore -storepass android -keypass android

keytool -genkey -v -keystore “C:\Users\jr.android\debug.keystore” -alias apelidoDakey -keyalg RSA -keysize 2048 -validity 10000

keytool -list -alias androiddebugkey -keystore “C:\Users\jr.android\debug.keystore” -storepass android -keypass android

keytool -list -alias androiddebugkey -keystore “C:\Users\jr.android\debug.keystore”

keytool -list -alias androiddebugkey -keystore “C:\Users\jr.android\debug.keystore” -storepass android -keypass android

keytool -list -alias androiddebugkey -keystore “C:\Users\jr.android\debug.keystore”

Consegui. No meu caso estou usando o Windows 7, 64bits, Português, com JDK 1.6.0_23.

O problema está relacionado com o Local e Idioma do Windows:

  1. Mude o Local para Estados Unidos, e o idioma para Inglês dos EUA.

  2. Apague o arquivo C:\Users&lt;username>.android\debug.keystore.

  3. Crie um novo projeto Android, básico tipo HelloWorld. Rode como debug no emulador. O arquivo debug.keystore será gerado novamente.

  4. Rode o comando recomendado pelo google:
    keytool -list -alias androiddebugkey -keystore “C:\Users&lt;username>.android\debug.keystore” -storepass android -keypass android

Para mim funcionou.

https://maps.googleapis.com/maps/api/place/search/json?location=-33.8670522,151.1957362&radius=500&types=food&name=harbour&sensor=false&key=AIzaSyArJOde4xcmn6NIspkvMlt1CjJby-EJCQI
Abs,

Microsoft Windows [versão 6.1.7600]
Copyright © 2009 Microsoft Corporation. Todos os direitos reservados.

C:\Users\jr>cd\

C:&gt;keytool -list -alias androiddebugkey -keystore "C:\Users\jr.android\debug.k
eystore" -storepass android -keypass android
androiddebugkey, Sep 23, 2012, PrivateKeyEntry,
Certificate fingerprint (MD5): 5D:92:93:9A:FE:3D:78:6E:F3:D6:57:EF:E2:81:B0:54

C:&gt;

API do Google Maps
Página inicial do Google Code > API do Google Maps > Inscrição na API do Google Maps
Obrigado por se inscrever para uma chave de API do Android Maps!
Sua chave é:
0eBrMXzkM5k6bJ7cOYqACfGwJzbuSV-XvTHiWBA
Esta chave é válida para todos os aplicativos assinados com seu certificado cuja digital é:
5D:92:93:9A:FE:3D:78:6E:F3:D6:57:EF:E2:81:B0:54
Aqui está um exemplo de layout xml para ajudá-lo a começar a usar os recursos de mapeamento:
<com.google.android.maps.MapView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:apiKey=“0eBrMXzkM5k6bJ7cOYqACfGwJzbuSV-XvTHiWBA”
/>

Confira a Documentação da API para obter mais informações.

©2008 Google - Política de Privacidade - Empregos - Termos e Condições - Sobre o Google[/code]

resolvido

fico feliz que tenha conseguido, mas para evitar problemas futuros, e como o pessoal não costuma ler a documentação, vou colar aqui o que diz na página do Google:

o Eclipse busca por esses lugares, também é possível verificar dentro do eclipse em:

Preferences -> Android -> Build -> Default Debug Keystore