Telefon na Javie

Oby przystąpić do konkursu ogłoszonego w tym numerze PCWK, trzeba opanować Javę w stopniu przynajmniej średnim. Jednak nawet najlepszy programista nic nie zdziała bez poprawnie skonfigurowanego środowiska.

Oby przystąpić do konkursu ogłoszonego w tym numerze PCWK, trzeba opanować Javę w stopniu przynajmniej średnim. Jednak nawet najlepszy programista nic nie zdziała bez poprawnie skonfigurowanego środowiska.

W poprzednim numerze PCWK omówione zostały przykłady aplikacji napisanych w tzw. małej Javie, czyli przeznaczonej do telefonów obsługujących J2ME (Java 2 Micro Edition). Teraz pora zabrać się za PJavę, przeznaczoną do telefonów Nokia 9210 lub 7650. Aby otrzymać stosowne oprogramowanie, musisz się zarejestrować na Forum Nokia www.forum.nokia.com, a następnie czekać na przesyłkę, czyli płytę zawierającą odpowiednie narzędzia. Zainstalować możesz jedną z dwóch wersji: tę, w której programy tworzyć będziesz w C, lub tę, w której aplikacje pisane będą w Javie. Tak jak w poprzednim artykule za przykład posłuży .

Instalacja

Uruchomiony emulator Nokii 9210.

Uruchomiony emulator Nokii 9210.

Po zainstalowaniu pakietu do dyspozycji otrzymasz takie programy, jak kreator struktur menu, czy kompilator plików pomocy. Zapamiętaj ścieżkę do katalogu, w którym znajduje się SDK (za przykład niech posłuży standardowa ścieżka: C:\Symbian\6.0\NokiaJava). Dodatkowym założeniem jest tym razem brak u Ciebie, drogi Czytelniku, JBuildera, na przykład z powodu zbyt dużych wymagań sprzętowych tego narzędzia. W związku z tym część czynności, które będziesz musiał wykonać, trochę się skomplikuje.

Prosty program

Studiując poniższe porady, dowiesz się, w jaki sposób skompilować, przetestować i wreszcie uruchomić program własnego autorstwa. Utwórz podkatalog Proba w katalogu C:\Symbian\6.0\NokiaJava\erj.

W prostym edytorze tekstu, na przykład w Notatniku, napisz program (jeżeli nie masz pomysłu na własny, to skorzystaj z poniższego) i zapisz go w nowo utworzonym katalogu.

Nazwij go Proba.java (ważna jest wielkość liter), a następnie skompiluj przy użyciu programu javac, dostępnego bezpłatnie w witrynie firmy Sun. Wygenerowane zostaną dwa pliki: Proba.class oraz Proba$Pa.class. Teraz ta prosta aplikacja zostanie przetestowana w środowisku PJava. Aby uruchomić aplikację testującą, wpisz:

C:\Symbian\6.0\NokiaJava \epoc32\release \wins\urel\pjava -cp j:\Proba Proba.

Poprawne skonfigurowanie karty Application w AIF Builder.

Poprawne skonfigurowanie karty Application w AIF Builder.

Pojawi się okno emulatora i w nim zostanie wyświetlona aplikacja. Jeżeli wszystko działa poprawnie, możesz utworzyć pakiet typu JAR. Aby znalazły się w nim oba pliki typu class, będąc w katalogu Proba, wpisz w wierszu poleceń:

jar cf Proba.jar *.class

Teraz kolej na wdrożenie aplikacji. Potem będziesz mógł wgrać swój program zarówno do emulatora, jak i do prawdziwego Communicatora.

Wdrażanie

Nowo dodane programy w Nokii 9210 uruchamia się w większości przypadków z folderu Extras. Nie należy wymagać od użytkownika, aby włączanie nowo napisanego programu odbywało się z wiersza poleceń. W związku z tym proces wdrożenia należy poprzedzić przygotowaniem m.in. ikon, które wyświetlane będą w katalogu Extras i ułatwią dostęp do aplikacji.

Poprzednio utworzyłeś pakiet typu JAR. Możesz jeszcze na tym etapie sprawdzić, czy jest poprawny:

C:\Symbian\6.0\NokiaJava \epoc32\release\wins\ urel\pjava -cp j:\Proba\ proba.jar Proba

Ustawienie karty DFRDs.

Ustawienie karty DFRDs.

Podczas instalacji dodany został program AIF Builder, którego teraz należy użyć. Wygeneruje on kilka plików, które dla porządku powinieneś przechowywać w odpowiednim katalogu (na przykład to C:\Symbian\6.0\NokiaJava\epoc32\wins\c\system\Apps\Proba). Uruchom AIF Builder.

Jeżeli masz polską wersję językową Windows, to korzystaj z grupy Programy w menu Start.

W AIF Builderze po wybraniu File | News zostaniesz poproszony o podanie informacji dotyczących projektu. Jako nazwę aplikacji wpisz Proba, jako numer podaj np. 0x01000000. Gdy zaznaczysz pole Java, zamiast C++ i OPL, to uaktywni się pole, w które wpisz parametr dla kompilatora Java, czyli w tym przypadku

-cp j:Proba\proba.jar Proba

Przejdź do karty DFRDs i odznacz na niej pole Quartz, bo zajmować się będziesz jedynie Crystal. Teraz należy podać ścieżkę do katalogu, w którym wygenerowane zostaną stosowne pliki. Założyć można, że jest to C:\Symbian\6.0\NokiaJava\Epoc32\Wins\c\ System\Apps\Proba, czyli katalog, który utworzyłeś niedawno. Dalej podaj, gdzie mają być zapisywane pliki tymczasowe (np. c:\win_me\temp).

Po wpisaniu naciśnij Create. Teraz czeka Cię praca twórcza, czyli rysowanie ikon. Musisz je utworzyć w dwóch rozdzielczościach (25x20 oraz 64x50 pikseli). Mniej dokładny piktogram zostanie wyświetlony, gdy widok folderu Extras zawierać będzie małe . Drugi pokazany zostanie przy dużych ikonach. Jeżeli efekt Twojej pracy uważasz za godny zapisania, wybierz Generate MBM file i zapisz rysunek (pod nazwą proba.mbm) do podawanego wcześniej na karcie Crystal, katalogu Proba. Wyjdź z edytora ikon i naciśnij Generate. AIF Builder wygeneruje pliki: Proba.app, Proba.txt, Proba.aif, Proba.rss.

Edytor ikon w AIF Builder.

Edytor ikon w AIF Builder.

Co tak naprawdę robi AIF Builder? Przypisuje utworzonej przez Ciebie ikonie ścieżkę do programu. To, co podałeś w polu Command Text Line, to parametr dla programu, który uruchomi Twoją aplikację, gdy użytkownik kliknie jej ikonę. Wygenerowane pliki zawierają informacje o omawianym przypisaniu.

Emulator

Włącz Emulator. Uruchomienie go trochę niestety potrwa. Kiedy program będzie gotowy do pracy, na monitorze wyświetli się ekran Communicatora wraz z przyciskami takimi jak Desk, Tel, Messaging, Internet, Contacts, Calendar, Office oraz Extras. Do dyspozycji będą również i te, które znajdują się po prawej stronie wyświetlacza w telefonie. Od teraz masz do dyspozycji wszystkie funkcje oraz programy, które standardowo zainstalowane są w Communicatorze. Zatem gdy będziesz pisać aplikację współdziałającą z już istniejącymi programami, to rezultat Twojej pracy także będzie widoczny. Przejdź teraz do katalogu Extras w Communicatorze. Listę ikon przewiń w prawo. Na końcu powinna się znajdować utworzona przez Ciebie i symbolizująca napisany program. Kliknij ją i wybierz Open. Do zakończenia jej działania służy przycisk Dismiss.

Przy tworzeniu zaawansowanych projektów niezbędne jest dodanie kontekstowego pliku pomocy.

W tym celu należy używać Help Compilera. Jest to niezwykle prosty w obsłudze program, który pozwoli Ci na utworzenie rozbudowanego systemu pomocy. Gdy będziesz dodawać nowe hasło, otworzy się Word, w którym udostępniony zostanie szablon. Wystarczy w odpowiednie miejsca wprowadzić właściwy tekst, a następnie plik zapisać. Dzięki temu generator otrzyma takie informacje jak: nazwisko autora, kategoria wpisu, hasło, które należy wprowadzić, aby dotrzeć do tej podpowiedzi itp. Jak widać, to naprawdę nie jest trudne.

Przykładowy prosty program zaczerpnięty z płyty, którą otrzymasz po zarejestrowaniu na Forum Nokia:

import java.awt.*;

import java.awt.event.*;

public class Proba

 extends Frame

 implements ActionListener {

 public static void main(String[] args) {

 Proba test = new Proba();

 }

 Proba() {

 Label lab = new Label("Przykladowy napis");

 Button but = new Button("Dismiss");

 but.addActionListener(this);

 addWindowListener(new Goodbye());

 setLayout(new GridLayout(2, 1, 10, 10));

 add(lab);

 add(but);

 pack();

 show();

 }

 public void actionPerformed(ActionEvent e) {

 dispatchEvent(new WindowEvent(this,

 WindowEvent.WINDOW_CLOSING));

 }

 private class Pa extends WindowAdapter {

 public void windowClosing(WindowEvent e) {

 System.out.println("Pa");

 System.exit(0);

 }

 }

}

Osoby, które lepiej czują się w C++ niż w Javie i zdecydowanie wolą narzędzia typu RAD (usprawniające tworzenie aplikacji za pomocą kreatorów i graficznych edytorów) już mogą zacierać ręce z radości. Współpraca firm Nokia i Borland w najbliższym czasie zaowocuje komponentami i innymi dodatkami do C++Buildera, pozwalającymi pisać aplikacje do Communicatora lub Nokii 7650.