API de serviços baseada na localização

Você pode usar os pacotes na API LBS para:

  • Encontrar um local
  • Exibir informações em um mapa
  • Calcular o tempo e a distância de uma viagem
  • Executar geofencing (marcar uma área para monitorar de modo que você estimule eventos quando alguém entrar na área)

Encontrar uma localização

Você pode recuperar informações de localização para um smartphone BlackBerry® usando um dos seguintes serviços:

  • GPS: Fornece informações de localização usando satélites de GPS. Você pode recuperar informações de localização do GPS usando a API de Localização JSR 179 no pacote javax.microedition.location ou as extensões do BlackBerry para JSR 179 no pacote net.rim.device.api.gps.

  • Localização geográfica: Fornece informações de localização usando o posicionamento da torre celular e pontos de acesso de WLAN. Não é necessário ter a tecnologia GPS no smartphone para usar o serviço de localização geográfica. A localização geográfica é útil para aplicativos que requerem uma localização aproximada e que podem ser usados internamente (por exemplo, aplicativos que recomendam pontos locais de interesse). É possível recuperar a localização geográfica usando o pacote net.rim.device.api.gps.

  • Geocodificação e geocodificação reversa: Fornece coordenadas geoespaciais para um endereço (geocodificação) e fornece um endereço para coordenadas geoespaciais (geocodificação reversa).

Como exibir informações em um mapa

Depois de recuperar a localização para um smartphone BlackBerry, você pode exibir as informações de localização no BlackBerry® Maps ou em mapas personalizados.

O BlackBerry Maps é um aplicativo de mapa e localização que pode exibir um mapa, a localização do smartphone BlackBerry, uma rota de uma localização inicial até uma localização final específica e pontos de interesse em um mapa.

Para criar mapas personalizados, é possível adicionar um objeto MapField ou RichMapField a uma tela, assim como você adiciona outros componentes de UI. Uma vez que você tenha um mapa personalizado, é possível usá-lo de qualquer uma das maneiras a seguir:

  • Especifique localizações no mapa
  • Controle o comportamento do mapa
  • Crie formas e objetos personalizados e exiba-os
  • Exiba objetos mapeáveis que possam ser atualizados dinamicamente conforme as informações forem alteradas
  • Adicione campos e sobreposições ao mapa
  • Personalize a aparência do mapa

Seu aplicativo pode interagir com o BlackBerry Maps das seguintes maneiras:

  • Chame BlackBerry Maps de seu aplicativo usando o método Invoke.invokeApplication() método com parâmetros MapsArguments. Você pode exibir o seguinte:
    • uma localização para um endereço no aplicativo Contatos
    • uma localização para um ponto de referência
    • uma localização em coordenadas específicas
    • uma localização ou rota usando um documento de localização
    • uma localização usando informações de pesquisa local
    • uma sobreposição de KML
  • Abra o BlackBerry Maps a partir do BlackBerry Browser

Você pode criar uma caixa de diálogo Seletor de localização que permite que um usuário escolha uma localização em uma lista de seleções disponíveis definidas. Você pode definir a caixa de diálogo Seletor de localização com a API do Seletor de localização, que é fornecida no pacote net.rim.device.api.lbs.picker. A localização é transmitida usando um objeto javax.microedition.location.Landmark.

Como calcular o tempo e a distância de uma viagem

Você pode recuperar o tempo e a distância estimados que leva para viajar entre dois pontos em uma determinada data e em um determinado tempo usando a API de Tempo de viagem. Atualmente, a API de Tempo de viagem fornece estimativas apenas para viagem de automóvel nos Estados Unidos e Canadá.

Para solicitar uma estimativa de tempo de viagem, recupere uma instância da classe TravelTimeEstimator. Use o método requestArrivalEstimate() e especifique as coordenadas para as localizações inicial e final e a hora de início. A solicitação é encaminhada a um servidor de Tempo de viagem, que identifica uma rota entre as localizações inicial e final e usa informações de tráfego atuais e históricas para fazer uma estimativa do tempo de viagem. A estimativa reflete as condições conhecidas na data e no tempo especificados. A estimativa de tempo de viagem é retornada pelo TravelTimeEstimator usando uma instância da classe TravelTime.

Como executar geofencing

Você pode usar a classe Geofence que é fornecida no pacote net.rim.device.api.location para definir áreas de geofence e receber notificações quando um usuário do smartphone BlackBerry entrar ou sair da área especificada. Um geofence é uma área geográfica virtual de interesse que você pode definir por um raio ao redor de uma localização ou por coordenadas que definem um polígono para a localização.

Seu aplicativo deve instanciar um objeto de Geofence e implementar o GeofenceListener para receber notificações para eventos de geofencing (quando um usuário entra ou sai de áreas de geofence). Cada instância de Geofence pode processar até 20 áreas monitoradas simultaneamente.

Próximo tópico: APIs de segurança
Tópico anterior: API Multimídia

Estas informações foram úteis? Gostaríamos de receber seus comentários.