2010-02-25 22 views
6

Czy ktoś wie o "znormalizowanym" interfejsie API języka Java do pracy z czujnikami i który jest ściśle powiązany z językiem Java ME, tak jak w przypadku JSR 256?Czy istnieje interfejs API czujnika Java SE?

Piszę bibliotekę Java do połączenia z siecią czujników składającą się z kilku różnych typów czujników (głównie proste rzeczy, takie jak temperatura, wilgotność, GPS itp.).

Do tej pory zastosowałem własny interfejs, a użytkownicy muszą pisać aplikacje na ten temat. Chciałbym zmienić to podejście i wdrożyć "standardowy" interfejs API, aby implementacje nie były tak ściśle powiązane z moją biblioteką.

Spojrzałem na JSR 256, ale to naprawdę nie jest świetne rozwiązanie, jak dla Java ME, a moja biblioteka jest używana głównie przez urządzenia z Androidem lub laptopy z pełną Java SE.

+0

JSR-256 jest przeznaczony dla J2ME, zgodnie z tym: http://jcp.org/en/jsr/tech?listBy=1&listByType=platform – skaffman

+0

Tak, niestety, JSR-256 nie pozwala na rozszerzenie o własne czujniki. Jesteś ograniczony do czujników twojego urządzenia. W moim przypadku potrzebuję połączyć się z siecią czujników, która nie jest częścią urządzenia mobilnego, więc nie jest to opcją (poza JSR-256 przeznaczonym dla J2ME, która na tym się kończy). –

+0

Przykłady czujników temperatury, wilgotności i lokalizacji (GPS) podano na stronach 68-69 wersji 1.2 specyfikacji JSR-256. – shadit

Odpowiedz

1

W Androidzie znajduje się pakiet android.hardware, który zawiera klasę Sensor, w sumie bardzo podobną do interfejsu JSI 256 czujnika. Zobacz, co możesz zrobić, korzystając z tego. Być może jest to nawet rozsądne podejście do implementacji tego w Java SE, o ile mi wiadomo, nie ma api Java SE sensor.

+1

Sprawdziłem Androida.sprzęt, ale jest jeszcze mniej rozciągliwy niż JSR-256, jest ograniczony do Androida i nie pozwala mi rozszerzyć się o własne czujniki (również ograniczone do czujników telefonu). –

1

JSR-256 nie wydaje się być ograniczony lub ograniczony w typach obsługiwanych czujników. Załącznik E zawiera definicje sensorów, ale są to tylko zalecane dane, które powinien obsługiwać określony typ czujnika. Wydaje się, że nic nie stoi na przeszkodzie, aby ktoś zdefiniował dodatkowe typy czujników.

proponuję wdrożyć do JSR-256, a potem po prostu to swoje pakiety:

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

... w twojej dystrybucji. Ponieważ są kierowane na ograniczone urządzenia, biblioteka musi być bardzo kompaktowa. Tak długo, jak nie byłoby zabronione ponowne rozpowszechnianie referencyjnej implementacji JSR-256, byłoby sensownym zaplanowanie tego.

1

Niezupełnie. JSR-275 miał mieć część swojej funkcjonalności (Ilości i typ Jednostki bardzo podobny do tego w 256), ale SE/EE EC go odrzuciło.

konsolidacji pomiędzy SE i ME jak wspomniano przez Oracle może prowadzić do bardziej wspólnego API czujnika i ram sztukę trochę czasu, ale jest to mało prawdopodobne przed Java 8.

Werner

1

Rzeczywiście, Oracle teraz nowinę , potrzebna była pewna forma SE Sensor API dla Java 8.

Została dodana do OpenJDK po Java 8: http://openjdk.java.net/projects/dio/ Działa zarówno z Java ME i SE (Embedded).

+0

Gdzie zostało to ogłoszone? –

+0

To jest dobre pytanie. Sądzę, że to założyłem, ponieważ został przyjęty jako projekt OpenJDK. W każdym razie, myliłem się. Komentarz usunięty. – Tuupertunut

+0

Nie, to nic nie znaczy ;-) Istnieje również projekt OpenJDK Kona: http://openjdk.java.net/projects/kona/, ale nie odnotowano zbyt dużej aktywności po lipcu 2015 r., Ani na listach dyskusyjnych: http : //mail.openjdk.java.net/pipermail/kona-dev/ ani nigdzie indziej. –

Powiązane problemy