2010-02-25 14 views
6

¿Alguien sabe de una API Java "estandarizada" para trabajar con sensores, y que está estrechamente vinculada a Java ME como es el caso de JSR 256?¿Hay una API de sensor Java SE?

Estoy escribiendo una biblioteca Java para interactuar con una red de sensores que consta de varios tipos diferentes de sensores (en su mayoría cosas simples como temperatura, humedad, GPS, etc.).

Hasta ahora he rodado mi propia interfaz, y los usuarios tienen que escribir aplicaciones en contra de esto. Me gustaría cambiar este enfoque e implementar una API "estándar" para que las implementaciones no estén estrechamente vinculadas a mi biblioteca.

Miré JSR 256, pero realmente no es una gran solución, ya que es para Java ME, y mi biblioteca es utilizada principalmente por dispositivos Android o portátiles que ejecutan la totalidad de Java SE.

+0

JSR-256 está diseñado para J2ME, de acuerdo con esto: http://jcp.org/en/jsr/tech?listBy=1&listByType=platform – skaffman

+0

Sí, lamentablemente el JSR-256 no le permite extender con tus propios sensores Estás limitado a los sensores de tu dispositivo. En mi caso, necesito interconectar una red de sensores que no es parte de un dispositivo móvil, por lo que no es una opción (aparte de que JSR-256 está destinado para J2ME, que lo descarta para empezar). –

+0

Los ejemplos de sensores de temperatura, humedad y ubicación (GPS) se dan en las páginas 68-69 de la versión 1.2 de la especificación JSR-256. – shadit

Respuesta

1

En android existe el paquete android.hardware que contiene una clase Sensor, en general bastante similar al tje JSR 256 sensor api. Por favor, mira lo que puedes hacer al usar eso. Tal vez sea incluso un enfoque razonable para implementar eso en Java SE, hasta donde yo sé, no hay ninguna API ap de Java SE.

+1

He mirado a Android.hardware, pero es incluso menos extensible que JSR-256, está limitado a Android, y no me permite extenderlo con mis propios sensores (también conocido como limitado a los sensores del teléfono). –

1

JSR-256 no parece estar limitado o restringido en los tipos de sensores que admite. El Apéndice E contiene definiciones de sensores, pero esos son solo los datos recomendados que debe manejar un cierto tipo de sensor. No parece haber nada que impida que alguien defina tipos de sensores adicionales.

Yo sugeriría que implemente a JSR-256 y luego sólo incluyen sus paquetes:

  • javax.microedition.sensor
  • javax.microedition.sensor.control

... en tu distribución. Dado que están dirigidos a dispositivos limitados, la biblioteca es inevitablemente muy compacta. Mientras no tenga prohibido volver a distribuir la implementación de referencia de JSR-256, tendría sentido planear hacerlo.

1

No del todo. JSR-275 estaba destinado a tener parte de su funcionalidad (Cantidades y un tipo de Unidad muy similar a la de 256) pero el EC SE/EE lo rechazó.

consolidación entre SE y ME como se ha mencionado por Oracle puede conducir a una API del sensor más común y un marco unitario algún tiempo, pero es poco probable antes de Java 8.

Werner

1

De hecho, Oracle ahora se extendió la noticia , se deseaba alguna forma de SE Sensor API para Java 8.

Se agregó a OpenJDK después de Java 8: http://openjdk.java.net/projects/dio/ Funciona tanto con Java ME como con SE (Embedded).

+0

¿Dónde se anunció eso? –

+0

Esa es una buena pregunta. Supongo que lo asumí, porque fue aceptado como proyecto OpenJDK. De todos modos, estaba equivocado. Comentario borrado. Sin – Tuupertunut

+0

, que por sí sola no significa nada ;-) También hay un proyecto OpenJDK Kona: http://openjdk.java.net/projects/kona/ pero no ha visto mucha actividad después de julio de 2015, ni en las listas de correo: http : //mail.openjdk.java.net/pipermail/kona-dev/ ni en otro lugar. –

Cuestiones relacionadas