Artigo Java Magazine 64 - Google Maps em aplicações móveis
Google Maps em aplicações móveis
Integrando o Google Maps com aplicativos Java ME
Aprenda como criar uma aplicação de solicitação de mapas utilizando o serviço Google Maps
O artigo aborda a construção de um aplicativo capaz de realizar buscas e visualizações de mapas de países, cidades, ruas entre outros, através da integração do Google Maps com nossas aplicações móveis utilizando a tecnologia J2ME.
Fornecer aos desenvolvedores uma maneira simples de construir aplicações capazes de utilizar os serviços de busca de mapas disponibilizados gratuitamente pela Google Maps.
Utilizando o Google Maps API podemos construir uma aplicação capaz de realizar buscas por endereços, mostrando o mapa de como localizar, por exemplo, o endereço de uma empresa, de um hotel ou hospital em qualquer lugar do mundo.
Google Maps em aplicações móveis:
A integração do Google Maps com nossas aplicações móveis é realizada através de uma conexão ao Google Static Maps API. Para isto, solicitamos via HTTP a geração de uma imagem de mapa estática que representa uma determinada localidade. Observe a Listagem 1 onde chamamos o método getGeocode(), presente na Listagem 2, para buscar os geocódigos do local por serem necessários na requisição de uma imagem. Logo após é chamado o método getImagem(), para criação e exibição da imagem na tela do dispositivo. O tratamento de movimentação de mapa são realizados pelos métodos movPositivo() e movNegativo(). Desta forma, conseguimos construir uma aplicação capaz de exibir mapas de cidades com a possibilidade de navegar de forma intuitiva por todo o mapa que é exibido na tela do dispositivo.
O Google Maps é um serviço de visualização de mapas e imagens disponibilizado pela Google no qual podemos navegar por diversas partes do mundo por meio da internet de forma interativa, rápida e eficaz. Por ser um serviço gratuito, é possível utilizá-lo em nossas aplicações através da Google Maps API, que é responsável por realizar a integração com aplicações Web.
E quanto à utilização do Google Maps em aplicações para dispositivos móveis? Veremos que integrar o serviço Google Maps com a tecnologia Java ME é tão simples quanto integrá-lo em outras aplicações.
Este é um cenário de uso muito interessante devido à mobilidade dos dispositivos Java ME, o que cria oportunidades para diversos tipos de aplicação.
Um pouco do Google Maps
O Google Maps foi lançado e disponibilizado gratuitamente em 2005 aos usuários da Internet para acesso a mapas de países, estados, cidades, bairros, avenidas e ruas. Tudo através de um site contendo uma interface simples, capaz de realizar buscas precisas com um ótimo desempenho. O usuário pode solicitar a visualização de vários tipos de mapas, como: mapas normais, que retornam um diagrama das ruas de uma cidade (Figura 1); mapas de satélite, que retornam imagens de satélite de uma determinada região do globo (Figura 2); mapas híbridos, que retornam uma combinação de mapas normais com mapas de satélite (Figura 3) e os mapas de terreno que exibe o mapa de ruas enfatizando o relevo do local (Figura 4). Também existem outros projetos da Google no qual podemos observar imagens do terreno e relevo da Lua e do planeta Marte (Figura 5).
A Google Maps API foi lançada pouco tempo depois. Consiste basicamente de um conjunto de classes JavaScript que proporciona aos desenvolvedores acesso aos serviços disponibilizados pelo Google Maps. Através dela podemos construir aplicativos que realizem consultas por endereços e utilizem funções de zoom e de movimentação de mapa.
Para solicitar um mapa de uma determinada localidade, o usuário deve apenas inserir o local desejado para que o serviço retorne o mapa requerido.
Observe a Figura 6. Ela representa em alto nível o fluxo de uma pesquisa no Google Maps:
1. O usuário solicita a busca do mapa de uma cidade;
2. O serviço recupera as informações prestadas pelo usuário e a partir delas é gerada a resposta;
3. O serviço retorna ao usuário o mapa do local solicitado.
Figura 1. Imagem de um mapa normal ou roadmap.
Figura 2. Imagem de um mapa de satélite.
Figura 3. Imagem de um mapa híbrido.
Figura 4. Imagem de um mapa de relevo.
Figura 5. Imagem de satélite do planeta Marte.
Figura 6. Esquema de uma solicitação de um mapa ao Google Maps.
Em uma aplicação Web que utilize os serviços prestados pela API, faz-se necessário realizar uma conexão ao servidor. Esta conexão é feita através de uma solicitação http"