Problemas com a Java Location API

Bom dia pessoal..

Estou novamente aqui expressando minha irritação com a falta de compatibilidade do Java ME, na verdade, o que irei relatar aqui é a falta de implementação total da Java Location API nos celulares da Nokia S60. Não sei se todos leram meu artigo chamado “Entendendo a Java Location API” publicado no JavaFree, se alguém não leu recomendo a leitura. No artigo eu descrevo de forma simples e direta como usar esta API, inclusive a criação de listeners para um dado ponto geográfico (latitude, longitude), ou seja, quando o usuário se aproxima de um certo ponto já configurado no aplicativo, o mesmo recebe um aviso, como por exemplo: Olá querido usuário, você está se aproximando do Museu do Ipiranga. Até aí tudo corria bem, mas no momento que resolvi testar o código em um Nokia N95, da família Serie 60, recebia uma LocationException. Tentei de todas as formas possíveis e não consegui resolver.

Já estava desistindo quando achei o documento “Location API for J2ME™ (JSR-179): Implementation Notes“. Quase tive um ataque cardíaco quando li a seguinte parte do documento:


Supported features
The implementation of the API contains all mandatory, and the following optional parts, of the
Location API (JSR-179).
• Multiple landmark stores that can be shared with native applications are supported. It is
possible to access landmark stores on different drives and external media, but stores can
only be created on the default drive.
• A terminal may have support for different types of positioning technology. The
implementation will return all the optional information that the used positioning technology
supports, such as:
• Altitude
• Speed and course
• Address info
• For positioning technology that support the National Marine Electronics Association (NMEA)
format (i.e. Global Positioning System (GPS)) this information can be obtained with the
Location.getExtraInfo() method. The specific NMEA sentences depend on what the
location technology supports, but no sentences are filtered out.

Excluded features
The following optional features are not supported in the implementation of the Location API:
• There is no orientation support, which is used to query the orientation of the terminal.
There is no proximity listener support, which is used to receive notifications of when the
terminal enters an area (specified by coordinates and a radius).

• It is not possible to select where landmark stores should be created.


Ou seja, simplesmente não posso usar a ProximityListener no meu aplicativo, quando o aplicativo alvo é um Nokia S60.. :(

Se eu entendi errado me corrijam, mas acho que não..

Att.
Ping

3 comentários

De fato existe sim esse problema Ricardo,
Tanto que se você ver o programa demo que vem do com o WTK.. o tal do CityGuide eles implementaram um proximity listener meio que na mão mesmo… Agora eu fiquei pensando… se tu dispor uma lista de lugares com as coordenadas e fazer tipo um circulo com um raio em volta desse landmark e quando o usuário aproximar de tal ponto ele avisar… podia ser até interessante… mas fico com medo da perfomance.. pois estamos tratando de milhoes e milhares de landmarks … e haja I/O e processamento pra lidar com isso em tempo real.
Pois é infelizmente o location api é boa mas não tao abrangente quando procuramos coisas especificas.
Abraçao,
Marcel

Marcel
Outubro 15th, 2007 às 22:18

Olá Marcel.. não entendi direito o que quiz dizer.. sabe de que forma eles implementaram esse proximityListener na mão? Vou testar ele no emulador do serie 60 da Nokia pra ver se rola…

Att.
Ping

Ricardo Ogliari
Outubro 16th, 2007 às 09:28

Vc conhece celulares onde este problema não ocorre? Quais?

Honovan
Julho 11th, 2008 às 20:54

Envie seu comentário

Nome (required)

E-mail (não será publicado) (required)

Site

Commentário