dynatrace

quarta-feira, 8 de dezembro de 2010

Google Maps Offline no Android

O único ponto que me prendia ao Symbian no mundo dos celulares era a possibilidade de um GPS offline gratuito. Mas como o Android vem crescendo tanto, era de se esperar algo assim aparecer logo logo.

A solução que encontrei não é tão boa, mas quebra um galho.

O mapa utilizado será o já conhecido Google Maps, mas rodando sob o aplicativo RMaps.




Peguei essa dica no site AndroidArena.com.br . Vou reproduzir as dicas aqui, mas o crédito é todo dele.

1º - No seu aparelho Android, busque pelo Market o aplicativo RMaps e instale. link

2º - No seu computador, baixe o zip contendo o aplicativo Atlas Creator. link

3º - Agora é hora de executar o Atlas Creator no PC, para selecionar a região do mapa.

Como o aplicativo é baseado em Java, ele vai rodar tanto no Windows quanto no Ubuntu.


  • No Windows, extraia o conteúdo do Zip e execute o arquivo "Mobile Atlas Creator.exe".
  • No Ubuntu, extraia o conteúdo do Zip, entre no diretório referente ao seu sistema (no meu caso o Ubuntu 9.10 x86 (32bit)) e copie o arquivo "libsqlite_jni.so" para a raiz do Atlas Creator, onde se encontra o arquivo "Mobile_Atlas_Creator.jar".
  • Agora abra um terminal e dê permissão de execução ao arquivo "start.sh" com o comando:  
  • chmod +x start.sh
  • Agora execute o script com o comando:
  • ./start.sh

Pronto, agora os seguintes passos podem ser executados em ambos sistemas:

Em Map Source selecione “Google Maps”, aparecerá o Mapa, então selecione a área do Mapa que você deseja fazer o download para a navegação.

Em Zoom Levels você seleciona o nível de zoom. Marque todos abaixo do escolhido. O 17 para mim, estava de bom tamanho, então selecionei do 0 ao 17.

Com o trecho de mapa ainda selecionado dê o nome que você deseja para o mapa em “name” depois clique em “Add selection”.

Agora em Atlas setings você tem que selecionar o formato final do mapa, o RMaps só reconhece o “BigPlanet SQLite” então é esse que você deve selecionar.

Agora clique em “Create atlas”. O tempo de download será correspondente ao tamanho do mapa que você selecionou, quanto maior o trecho maior o tempo de download.

Depois de terminar o download do mapa, é hora de colocá-lo no celular. O Rmaps cria uma árvore de diretórios no SD do aparelho. O arquivo gerado, "BigPlanet_maps.sqlitedb" deve ser colado em /rmaps/maps , dentro do SD.

Abra o aplicativo RMaps no celular e navegue até Menu > Mais > Settings > User defined maps > BigPlanet_maps.sqlitedb > Enabled Maps. Agora retorne a tela principal aonde aparecem os mapas, clique novamente no Menu > Maps >e selecione o BigPlanet_maps.sqlitedb.

Lembre-se de ativar o GPS para coletar sua localização. Deixar sua conexão 3g ou mesmo Edge ativa vai ajudar a coletar sua posição mais rápido, depois pode desabilitar, o gasto para isso será o mínimo, pois o mapa já estará carregado.

A única desvantagem desse aplicativo é que não podemos selecionar uma área muito grande no mapa, com um zoom muito alto, pois o programa acusa que o arquivo vai ficar muito grande.

Mas dá para ajudar muito, caso você precise apenas de uma área isolada ou uma maior com um zoom não tão alto.

O que me alegro foi essa notícia, informando que o Mapas do Google, o oficial, terá a opção de cache para uso offline em sua próxima versão, então é só aguardar.

2 comentários:

  1. Danne.
    Pesquisando no Google, encontrei o link para seu blog. Que sorte! Segui todos os passos do tutorial para a instalação dos GMaps no meu Xperia X10 mini pro.
    Funcionou tudo muito bem. Estou muito contente com a solução encontrada porém ainda restou uma pequena dúvida. Os botões + e - de acionamento da função zoom ficam sempre inoperantes? Uma vez que eu tenha escolhido um valor para Zoom Levels, meu mapa será fixo neste nível de detalhamento?
    Se você puder me esclarecer, neste detalhe, mais uma vez eu lhe agradeço.
    Jose Joaquim

    ResponderExcluir
  2. Ola, JJ, sim, os botoes de zoom vao ser definidos de acordo com o nivel que voce selecionou ao criar o mapa. Se selecionou apenas um nivel, sera apenas este que estara disponivel. Se dois niveis, entao os botoes ja terao uso, mas apenas de um toque, e assim em diante. =]

    ResponderExcluir