Programowanie telefonu komórkowego
Transkrypt
Programowanie telefonu komórkowego
Zadanie 5 Temat: Aplikacja klienta bazy danych dedykowana dla telefonów komórkowych Cel zadania Celem zadania jest poznanie technologii J2ME (Java Micro Edition) będącej platformą programistyczną, w którą wyposażane są najnowsze odbiorniki telefonii komórkowej, palmtopy, kalkulatory, kamery cyfrowe oraz inne przenośne urządzenia techniki komputerowej . Opis platformy J2ME Platforma J2ME, o czym wspomnieliśmy już w celach zadania, wciąż zwiększa swą popularność znajdując zastosowanie w wielu urządzeniach techniki komputerowej. Opracowana przez Java Community Process TM oraz wiodących producentów sprzętu i oprogramowania, jest zbiorem funkcji API wbudowanych i odpowiednio dopasowanych do możliwości różnorodnych urządzeń, w których znalazła zastosowanie. Mimo pewnych uproszczeń w stosunku do standardowej edycji (J2SE), nie straciła ona głównych cech platform firmy Sun, tj. przejrzystego interfejsu użytkownika, zagwarantowanego bezpieczeństwa informacji, możliwości wykorzystania dostępnych protokołów komunikacyjnych oraz przenośności. Architektura J2ME definiuje różne możliwe konfiguracje, profile sprzętowe oraz opcjonalne pakiety jako elementy umożliwiające budowanie kompletnych środowisk, w ramach których mogą być uruchamiane różnorodne aplikacje w pełni zaspakajające potrzeby rynków docelowych. Każda z kombinacji jest zoptymalizowana z uwzględnieniem dostępnej pamięci, mocy obliczeniowej oraz możliwości komunikacyjnych określonego urządzenia. W rezultacie otrzymujemy platformę Javy całkowicie uzupełniającą oraz w pełni wykorzystującą możliwości sprzętu. Konfiguracje tworzą: maszyna wirtualna oraz zbiór bibliotek klas. Dla określonego typu urządzeń o podobnej specyfice tworzą one podstawową warstwę funkcjonalną dla oprogramowania z jednej i użytkownika z drugiej strony. Aktualnie rozróżnia się dwa typy konfiguracji J2ME, uzależnione od rodzajów i możliwości sprzętowych urządzeń dla których zostały zaprojektowane: konfiguracja urządzeń sieciowych o ograniczonych możliwościach (ang. Connected Limited Device Configuration, w skrócie CLDC) oraz konfiguracja zaawansowanych urządzeń sieciowych (ang. Connected Device Configuration, w skrócie CDC). Konfiguracja CLDC Konfiguracja CLDC przeznaczona jest dla urządzeń o ograniczonej ilości pamięci dla aplikacji (128 KB do 512 KB), stosunkowo wolnych procesorach 16 lub w najlepszym razie 32 – bitowych, przeznaczonych do sporadycznej komunikacji sieciowej, takich jak telefony komórkowe czy pejdżery dwukierunkowe. Konfiguracja CDC Konfiguracja CDC przeznaczona jest dla urządzeń o zdecydowanie większych możliwościach zarówno sprzętowych jak i pod względem pracy sieciowej od tych wymienionych w poprzednim punkcie. Urządzenia dla jakich konfiguracja CDC została zaprojektowana to np. systemy telematyczne instalowane w pojazdach drogowych, urządzenia telewizyjne, konsole gier telewizyjnych, kioski informacyjne. Konfiguracja ta zawiera pełną implementację wirtualnej maszyny Javy, oraz o wiele szerszy zestaw bibliotek J2SE niż CLDC. Typowo przyjęto, że urządzenia takie dysponują przynajmniej 2 MB pamięci przeznaczonej dla aplikacji oraz stosunkowo dobrą mocą obliczeniową wspieraną procesorami przynajmniej 32 – bitowymi. Profile konfiguracji Aby zapewnić kompleksową platformę aplikacyjną, podstawowe konfiguracje CLDC i CDC wzbogacone są dodatkowo o zbiór bibliotek i klas Javy wyższego poziomu, wspierające tworzenie i użytkowanie aplikacji, interfejsu użytkownika i ułatwiające dostęp do specyficznych dla danego typu urządzenia funkcji. I tak dla wymienionych konfiguracji dostępne są następujące (zhierarchizowane w przypadku CDC) profile: Profil Konfiguracji Mobilnych Urządzeń Informacyjnych Profil konfiguracji mobilnych urządzeń informacyjnych (ang. Mobile Information Device Profile, w skrócie MIDP) uzupełniający konfigurację CLDC, przeznaczony jest przede wszystkim jako platforma aplikacyjna dla telefonów komórkowych czy pejdżerów dwukierunkowych. Oferuje on niezbędną dla tychże urządzeń funkcjonalność obejmującą interfejs użytkownika, funkcje wspierające połączenia sieciowe czy zarządzanie aplikacjami oraz danymi przechowywanymi w obrębie pamięci lokalnej. MIDP w połączeniu z CLDC stanowi kompleksowe środowisko aplikacyjne umożliwiające pełne wykorzystanie możliwości i funkcji konkretnych mobilnych urządzeń informacyjnych, zapewniając przy tym minimalne wykorzystanie pamięci i zużycie energii. Podstawowy Profil Konfiguracji CDC Podstawowy profil konfiguracji CDC (ang. Foundation Profile, w skrócie FP) stanowi najniższą warstwę platformy aplikacyjnej dla konfiguracji CDC. Jak wspomniano wcześniej, ze względu na duże zróżnicowanie urządzeń dla których zaprojektowano CDC, poszczególne profile dostępne dla tejże konfiguracji zostały zhierarchizowane, aby możliwie jak najlepiej oddzielić od siebie warstwy oprogramowania pracujące na różnych poziomach abstrakcji. Zabieg hierarchizacji profili dla konfiguracji CDC pozwala w bardzo prosty sposób na wymianę profili wyższego poziomu w zależności od typu i przeznaczenia danego urządzenia bez konieczności jakiejkolwiek ingerencji w oprogramowanie profili niższych poziomów – z ekonomicznego punktu widzenia postępowanie takie jest bardzo korzystne. Podstawowy profil konfiguracji CDC obejmuje szereg funkcji sieciowych niskiego poziomu, nie wspiera natomiast swą funkcjonalnością implementacji graficznego interfejsu użytkownika. Dla urządzeń wymagających tego ostatniego FP może być rozszerzony przez dodanie do oprogramowania urządzenia profili wyższego rzędu Podstawowego Profilu Osobistego lub Pełnego Profilu Osobistego opisanych w kolejnych punktach. Profil Osobisty Konfiguracji CDC Profil osobisty konfiguracji CDC (ang. Personal Profile, w skrócie PP) przeznaczony jest dla urządzeń docelowych wymagających pełnego wsparcia oprogramowania interfejsu graficznego użytkownika (GUI), takich jak wizualne urządzenia komunikacyjne, bankomaty, czy konsole gier telewizyjnych. Profil ten zawiera pełną implementację pakietu Java Abstract Window Toolkit (AWT), pozwalającą w największym skrócie na łatwe oprogramowanie graficznego, okienkowego, interfejsu użytkownika, uwzględniającą proste wykorzystanie sieciowych appletów Javy stworzonych dla środowisk graficznych. Podstawowy Profil Osobisty Konfiguracji CDC Podstawowy profil osobisty konfiguracji CDC (ang. Personal Basis Profile, w skrócie PBP) jest okrojoną wersją poprzedniego profilu wykorzystywaną w urządzeniach sieciowych stosujących ograniczony sposób graficznej prezentacji informacji, lub wymagających stosowania specjalistycznych wersji graficznego interfejsu użytkownika dla zadanych aplikacji. Urządzeniami takimi są np. systemy telematyczne instalowane w pojazdach drogowych czy kioski informacyjne. Pakiety Opcjonalne Architektura J2ME może być rozszerzana ponadto o pakiety opcjonalne odpowiadające specyficznym wymaganiom rynkowym stawianym konkretnym typom urządzeń. Zapewniają one dodatkową funkcjonalność obejmującą wykorzystanie zarówno standardowych, wymienionych wcześniej funkcji profili jak i umożliwiającą używanie nowych technologii takich jak usługi sieciowe, bezprzewodowa wymiana informacji, multimedia, czy systemy bazodanowe. Ponieważ konstrukcja pakietów opcjonalnych jest modułowa producenci mogą dowolnie kształtować zakres usług przez nie świadczonych dobierając je w taki sposób aby w pełni wykorzystać zalety i możliwości nowych typów urządzeń. Poniżej podano schemat ideowy budowy architektury J2ME. Serwery komórkowe, i systemy dedykowane Serwery i komputery osobiste Systemy telemantyczne i telewizyjne, konsole Pakiety Opcjonalne Pakiety Opcjonalne Pakiety Opcjonalne Java 2 Platform Enterprise Edition (J2EE) Java 2 Platform Standard Edition (J2SE) PP pejdżery dwukierunkowe Pakiety Opcjonalne PBP FP Wirtualna Maszyna Javy (JVM) Wirtualna Maszyna Javy (JVM) Telefony CDC CLDC Wirtualna Maszyna Javy (JVM) Wirtualna Maszyna Javy (JVM) Architektura J2ME