2013-08-30 11 views
6

Jak uzyskać niezależny od platformy poziom naładowania baterii w% w Javie?Jak uzyskać niezależny od platformy poziom naładowania baterii w% w Javie?

Istnieje już kwestia dla Windows to: How to get the remaining battery life in a Windows system?

A dla Mac: Get battery level in Java

Ale w jaki sposób można to zrobić w sposób niezależny od platformy, więc to działa w systemach Windows, Mac, Linux, a może i inne platformy?

+1

Ponieważ wszystkie te odpowiedzi wymagają pewnego rodzaju natywnego kodu dostępu do tych informacji, trzeba by zapewnić realizację dla każdej obsługiwanej platformie jakikolwiek. W takim przypadku możesz spróbować stworzyć swój własny wspólny interfejs. – Thomas

Odpowiedz

6

Nie ma „niezależny od platformy” sposób odczytać poziom baterii; ten rodzaj informacji o sprzęcie jest bardzo zależny od systemu operacyjnego. Jedynym sposobem uzyskania "niezależnego od platformy" interfejsu Java byłoby napisanie opakowania JNI dla każdej docelowej platformy.

(W rzeczywistości na Linuksie jest to całkiem proste, wszystkie te informacje są prezentowane jako pliki tekstowe pod /proc/acpi/battery, więc nie potrzebujesz tam żadnego JNI.) Nie sądzę, że OS X ma taką samą przyjazną prezentację, a ja ' m całkiem pewne, że Windows nie.)

1

Nie sądzę, że jest jakikolwiek sposób, aby to zrobić, kiedy pisałem projekt, aby uzyskać szczegóły maszyny HW komputera, takie jak temperatura procesora, i musiałem użyć macierzystego interfejsu java z biblioteki. Pierwsze to dla różnych wersji systemu Windows nie była prosta, więc nie sądzę, że można to zrobić.

Powiązane problemy