Novidades desta versão

Local Navigation

Serviços baseados em localização

Melhorias de geocodificação

A classe Locator no pacote net.rim.device.api.lbs foi desaprovada e substituída por novas APIs de geocodificação reversa e geocodificação. Ao usar estas APIs, é possível executar solicitações de geocodificação reversa e geocodificação de modo assíncrono e síncrono. Para iniciar uma solicitação assíncrona, é necessário solicitar uma implementação ServerExchangeCallback. Caso contrário, a solicitação será sincrônica. As APIs de geocodificação reversa e geocodificação são fornecidas nos pacotes net.rim.device.api.lbs.maps.server e net.rim.device.api.lbs.maps.server.exchange.

Estrutura mapeável dinâmica

A estrutura mapeável dinâmica permite a você criar localizações em um mapa, especificar se uma localização deve ser atualizada e processamento novamente o mapa quando a localização é atualizada. Por exemplo, você pode exibir a localização de um contato do BlackBerry Messenger quase em tempo real em um mapa quando a localização do contato altera. A estrutura mapeável dinâmica é fornecida no pacote net.rim.device.api.lbs.maps.model.

Estilos de estruturas

E possível definir estilos para itens únicos mapeáveis ou classes de itens mapeáveis usando a opção Estilos de estruturas. Você também pode ajustar a borda da linha (espessura, opacidade e cor), o preenchimento (opacidade e cor) e o título (preenchimento e fonte) de itens mapeáveis. A opção Estilos de estruturas está localizada no pacote net.rim.device.api.lbs.maps.view.

Construção de estrutura de bloco

Você pode criar objetos mapeáveis correspondentes a formas geoespaciais, como polígonos, polilinhas, imagens, linhas, marcadores e pontos usando a Construção de estrutura de bloco. As formas (por exemplo, imagens ou polígonos) são fornecidas no pacote net.rim.device.api.lbs.maps.model. As formas geoespaciais correspondentes a estas formas são fornecidas no pacote net.rim.device.api.lbs.maps.model.geospatial. É possível usar estas formas para fazer diversas coisas, como exibir imagens de perfil do BlackBerry Messenger como marcadores para localizações em um mapa.

Sobreposição de bússola

É possível adicionar uma sobreposição ao aplicativo ao usar a classe CompassField, fornecida no pacote net.rim.device.api.lbs.compass. O CompassField fornece uma representação gráfica de uma bússola para fornecer contexto direcional (por exemplo, em um aplicativo de mapeamento, a bússola exibe onde o norte está em relação ao usuário do aparelho BlackBerry). Você pode criar uma instância de CompassField e adicioná-la ao gerente de campo, como outros componentes de interface do usuário no BlackBerry Java SDK.

Melhorias do MapField e MapAction

As classes MapAction e MapField, fornecidas com o pacote net.rim.device.api.lbs.maps.ui oferecem novos métodos que permitem que você execute ações específicas em um campo de mapa. As classes suportam certas ações, como definição do centro, zoom e nível de rotação do campo de mapa.

Obter a posição entre duas localizações

É possível recuperar a posição inicial da bússola entre dois locais específicos ao usar o método getBearing(), definido na classe net.rim.device.api.gps.LocationInfo. Você deve fornecer coordenadas geográficas (latitude e longitude) do local inicial e final, e executar getBearing(). Esta opção calculará o ângulo (em graus) entre os dois locais.

Execução de geofencing

Você pode usar a classe Geofence para definir áreas de geofence e receber notificações quando um usuário do aparelho BlackBerry entrar ou sair da área especificada. Um geofence é uma área geográfica virtual de interesse que pode ser definida pelo raio ao redor de um local, ou pelas coordenadas que definem um polígono para o local.

Seu aplicativo deve criar uma instância de um objeto Geofence e implementar GeofenceListener para receber notificações sobre eventos de geofencing (quando um usuário inserir ou houver áreas de geofencing. Cada instância de Geofence é projetada para processar até 20 áreas monitoradas concomitantemente. Geofence é fornecido no pacote net.rim.device.api.location.

Recuperação de uma caixa delimitadora

É possível recuperar uma caixa delimitadora mapeável (ou seja, baseada em latitude e longitude) para um item mapeável usando getBoundingBox(). As classes que implementam a interface Mappable definem este método. Uma caixa delimitadora mapeável representa uma área retangular que um item mapeável ocupa em um mapa.

Estimativa de horário de partida

A API de Tempo de viagem é melhorada. Você deve especificar um horário de chegada e solicitar o horário de partida estimado. A API de Tempo de viagem é fornecida no pacote net.rim.device.api.lbs.travel, e pode solicitar horários de partida e de chegada a partir de sua localização atual.

Próximo tópico: Gráficos
Tópico anterior: Near Field Communication

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