Pobieranie informacji o telefonie
fatalbomb
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.encoding` | Używany standard kodowania znaków | Cp1250 |
`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.smsc` | Numer centrum wiadomości | +48602951111 |
`com.sonyericsson.imei` | Numer IMEI (telefony SonyEricssona) | IMEI 00460101-501594-5-00 |
`com.nokia.mid.imei` | Numer IMEI (telefony Nokii) | |
`IMEI` | Numer 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();
Pobieranie informacji o numerze IMEI telefonów LG, Samsung i innych (nie wymienionych w tym artykule) jest możliwe??
Jest taka funkcja do Delphi albo Pascala?