Dane dostępne przez System.getProperty()

Dostęp do informacji o telefonie daje nam statyczna metoda getProperty klasy System. Używamy jej w następujący sposób:

 
String s = System.getProperty ("właściwość");
 

gdzie zamiast słowa właściwość wpisujemy odpowiedni ciąg. Przykładowe informacje możliwe do pobrania to:

Nazwa właściwości Opis Przykładowa wartość
microedition.configuration Numer wersji CLDC CLDC-1.1
microedition.profiles Numer wersji MIDP MIDP-2.0
microedition.platform Nazwa platformy - przy okazji również nazwa modelu telefonu oraz wersja firmware SonyEricssonK750/R1CA021
microedition.locale Informacja o lokalizacji, w której używany jest telefon. Zmienia się zależnie od wybranego języka menu (zmiana języka w menu spowoduje zmianę tej wartości). Jeżeli dany język jest używany w więcej niż jednym kraju, dowiemy się również jaki jest to dialekt (np. 'en-US' oznacza angielski amerykański). en-US
microedition.encodingUżywany standard kodowania znakówCp1250
video.snapshot.encodings Jeżeli telefon jest wyposażony w aparat fotograficzny: obsługiwane tryby zapisywania zdjęć encoding=jpeg&width=1024&height=1632
wireless.messaging.sms.smscNumer centrum wiadomości+48602951111
com.sonyericsson.imeiNumer IMEI (telefony SonyEricssona)IMEI 00460101-501594-5-00
com.nokia.mid.imeiNumer IMEI (telefony Nokii)
IMEINumer IMEI (telefony Motoroli)


Metoda może zgłosić wyjątek IllegalArgumentException w sytuacji, gdy podany ciąg znaków nie opisuje żadnej znanej właściwości (przykładowo: wywołanie System.getProperty ("foo") spowoduje wygenerowanie wyjątku). Jeżeli podamy referencję do pustego obiektu, zgłoszony zostanie również wyjątek NullPointerException (dotyczy to wszystkich przypadków użycia niezdefiniowanego obiektu).

Pobieranie informacji o pamięci

Przy okazji możemy dowiedzieć się, ile pamięci operacyjnej posiada nasz telefon. Służą do tego dwie metody obiektu Runtime:
  • freeMemory() - zwraca ilość dostępnej wolnej pamięci w bajtach;
  • totalMemory() - zwraca całkowitą ilość pamięci w bajtach.


 
Runtime r = Runtime.getRuntime(); // getRuntime() jest metodą statyczną
int free = r.freeMemory();
int total = r.totalMemory();
 


Pobieranie informacji o wyświetlaczu

Za pomocą metod getWidth() i getHeight() klasy Displayable (lub dziedziczącej po niej, typowo Canvas) możemy dowiedzieć się, jakie mamy wymiary ekranu dostępnego dla aplikacji.

Kilka metod udostępnia nam również klasa Display:
  • isColor() - zwraca true, jeżeli wyświetlacz jest kolorowy
  • numColors() - podaje ilość kolorów możliwą do wyświetlenia.


 
boolean czyKolorowy = display.getDisplay(this).isColor();
int liczbaKolorow = display.getDisplay(this).numColors();
 


Kategoria: Java » J2ME

2 komentarze

Brak avatara
Napisany 2011-07-24 15:30 przez mariusz256

Pobieranie informacji o numerze IMEI telefonów LG, Samsung i innych (nie wymienionych w tym artykule) jest możliwe??

Avatar: TomRiddle
Napisany 2011-05-11 21:16 przez TomRiddle

Jest taka funkcja do Delphi albo Pascala?

4programmers.net