×
Namespaces

Variants
Actions

Como usar os dados do Google Maps em aplicações móveis

From Nokia Developer Wiki
Jump to: navigation, search

Archived.pngAquivado: Este artigo foi arquivado, pois o conteúdo não é mais considerado relevante para se criar soluções comerciais atuais. Se você achar que este artigo ainda é importante, inclua o template {{ForArchiveReview|escreva a sua justificativa}}.

Since this article was written, alternative Map Tile caching solutions for Java ME have become available. Map Tile caching solutions such as the Nokia Maps API for Java ME have several advantages over static mapping solutions such as the static Google Maps API including:

  • Static mapping services such as the Google Static Maps API or Nokia's RESTful Map API do not cache or tile the images when requested, therefore each request involves a round trip to the server. If the map on a mobile application needs to be refreshed at any time, using a caching library will result in a reduction in network traffic after around three maps have been displayed. An explanation of this can be found here
  • As the name implies, Google's Static Maps API can only retrieve over http static images for a requested coordinate point, image size, image type and zoom level. Newer libraries offer additional functionality out of the box offering dynamic Map content and touch support, where the user can move around his/her current position, zoom in, zoom out, modify the view mode to satellite or translate an address to a coordinate point and show that on the map, among others. This abstraction of the underlying functionality is hidden from the developer,os much less coding is needed in order to achieve the same result .

Additionally the following points apply in favour of Nokia Maps when comparing to Google Maps:

  • No legal restrictions of using the API outside a web browser application or need to provide a link to the native Google Maps App (if there is one), or to Google Maps (if there isn't one). See Terms of Service below.
  • Higher free daily request limits. Nokia Maps API for Java ME supports up to 50,000 render requests per day and per unique IP address (as of January 2012), for Nokia Developer registered users (free of charge) while the limit for Google's Static Maps API is currently 1000 unique (different) image requests per viewer per day.
An article with the same functionality, written with Nokia Maps API for Java ME, that uses much less code can be found here

Article Metadata

Artigo
Tradução:
Por valderind4
Última alteração feita por hamishwillee em 27 Jun 2013

Este artigo mostra com usar os dados do Google Maps em aplicações móveis.
O Google Maps oferece serviços REST, estes permitem acessar dados com uma simples requisição HTTP, e além do mais podem ser integrados facilmente em aplicações móveis.

Contents

Registrar-se para obter uma Google Maps API key

Primeiro você precisa registrar-se nesta página:
http://code.google.com/apis/maps/signup.html
Uma vez que você tenha um registro, você tem uma chave (um simples ‘string’), com isto você pode usá-la para todas suas consultas aos serviços do Google Maps.

Mapas estáticos

Por padrão o Google Maps é apropriado para aplicações Web. Todavia, ela inclui bastante funcionalidades em Ajax, que não são muito úteis se você estiver construindo aplicações móveis. A solução é usar o: static maps, serviço este que permite buscar imagens simples que podem facilmente serem usadas em aplicações móveis.

O serviço de mapas estáticos suporta vários formatos de imagens (png32, GIF, JPG) e tamanhos de imagens configuráveis, assim você pode pegar imagens perfeitas para todos os objetivos. Por exemplo, se você quiser buscar a localização de:

  • latitude: 41.867878
  • longitude: 12.471516

Você pode simplesmente buscar esta URL com uma requisição HTTP GET:

http://maps.google.com/staticmap?center=41.867878,12.471516&format=png32&zoom=8&size=240x320&key=<API_KEY>

Desta forma você pegará uma imagem PNG32 com uma largura de 240 pixels e uma altura de 320 pixels, centralizada no ponto (41.867878,12.471516), e um nível de zoom de 8 (a faixa de nível do zoom vai de 0 até o nível máximo de 19)
Google staticmap.jpg

Geocódigos um endereço

Segundo o Google Maps docs:
Geocodificação e o processo de conversão de endereços (assim como "1600 Amphitheatre Parkway, Mountain View, CA") em coordenadas geográficas (como latitude 37.423021 e longitude -122.083739)

Os seguintes exemplos descrevem a construção de uma aplicação que mostra o endereço tipificado para o usuário final. Primeiro você precisa ‘geocodificar’ o endereço em coordenadas geográficas.
Para fazer isto, o Google Maps oferece outro serviço REST que pode facilmente ser acessado com uma simples requisição HTTP.

Se você quiser o geocódigo deste endereço
Leicester Square, London
Requisite esta URL do seu código

http://maps.google.com/maps/geo?q=Leicester%20Square,%20London&output=csv&key=<API_KEY>

E você obterá essa saída:

200,6,51.510605,-0.130728

Onde:

  • O primeiro número e um código, que neste caso (200) significa que a geocodificação foi feita com sucesso (para uma lista completa de status veja: [1])
  • O Segundo número exprime a exatidão da geocodificação (de 0 a 9 – máximo de exatidão)
  • Os terceiro e quarto números representam a latitude e longitude do endereço geocodificado, logo estes são as coordenadas usadas para buscar o mapa através do serviço de mapas.

Como você pode ver, existe um parâmetro de saída na requisição de geocódigos. Isto significa que você pode escolher o formato de saída que você preferir. Os formatos suportados são:

  • xml
  • kml (o mesmo que xml, mas com diferença no tipo de conteúdo).
  • json (não é realmente útil para aplicações móveis)
  • csv (Comma-separated values)

Servidor Proxy, limites de uso

Uma vez que sua Google Maps API key é delimitada por uma URL específica, em ordem para acessar os serviços de mapas você precisa configurar o servidor proxy que receberá a requisição HTTP da aplicação móvel e a transferirá para o Google Maps REST URLs, retornando uma resposta para o cliente móvel. (como apontado na página de comentários, este não é um ponto totalmente claro ainda).

Portanto, esteja atento, pois há um ' limite no número de requisições ', tanto para mapas quanto para serviços de geocódigos que você podem ser feitas por dia. Para uso pessoal elas são mais do que suficientes, mas se você planeja desenvolver serviços comerciais você precisa ter isso em mente.

This page was last modified on 27 June 2013, at 06:34.
112 page views in the last 30 days.