Compilazione programmi PersonalJava e preparazione per l'installazione sul cellulare.
Per compilare un programma PersonalJava bisogna effettuare vari passi:
- compilazione vera e propria e creazione del file .jar "eseguibile"
- creazione dei file .app e .aif associati al .jar
- creazione dell'icona dell'applicazione (opzionale)
- avvio dell'applicazione PersonalJava sull'emulatore
Compilazione e creazione .JAR:
1) Impostare la variabile di ambiente EPOCROOT al valore \Symbian\UIQ_21\ o \Symbian\UIQ_70\ osservando che:
- non va specificato il drive
- la variabile deve iniziare e finire con "\"
- l'SDK non può essere installato in sottocartelle, ma sono nella root-directory del drive
- è preferibile installare gli SDK in C:\Symbian ,
perché non sono progettati per lavorare su altri drive, e per
usarli da altri drive occorre riconfigurarli
2) Utilizzare questo script DOS, mettendo al posto di MyAppName il nome della propria applicazione, rispettando maiuscole e minuscole:
@echo off
if "%epocroot%" == "" goto noepocroot
set appname=MyAppName
set
localclasspath=%epocroot%epoc32\java\lib\classes.zip;%epocroot%erj\classes;%epocroot%erj\ext\qawt.jar;%epocroot%erj\ext\util.jar;%epocroot%epoc32\java\ext\javaphone.jar
cd %epocroot%erj\%appname%\
if not exist %epocroot%erj\%appname%\code\ mkdir %epocroot%erj\%appname%\code
javac -classpath %localclasspath% -d code source\*.java
if errorlevel 1 goto failed
cd code
jar -cf ..\install\%appname%.jar *.class
cd ..
echo Successfully compiled %appname%
goto exit
:failed
echo Failed to compile %appname%
goto exit
:noepocroot
echo The environment variable 'epocroot' has not been set.
echo Ensure that it is set to where you installed the UIQ SDK.
echo E.g. C:\Symbian\UIQ_70\
goto exit
:exit |
Si otterrà così un file .JAR contenente gli eseguibili
Java. Questo tipo di .JAR non può essere installato direttamente
sul cellulare, nè tramite PC ne cliccandoci sopra quando il file
è giù sul cellulare stesso: occorrono i corrispettivi
vile .AIF e .APP per lanciarlo.
Creazione file .APP e .AIF per l'applicazione
Da DOS lanciare AIFBUILDER (occorre che Java sia correttamente
installato sul sistema e l'SDK sia propriamente configurato (vedi questa pagina)
Selezionare JAVA, inserire il nome dell'applicazione, l'UID ricevuto
dalla Symbian (oppure uno di prova compreso tra 0x01000000 to
0x0fffffff) , e la linea di comando che lancerà l'applicazione.
Passare alla tab successiva:
Scegliere UIQ come "UI variant" (se si hanno piu' SDK installati, compariranno più opzioni)
Scegliere una cartella per i file definitivi (Location to generate
files) e per quelli temporanei (Output directory for temporary files)
Se si dispone già del file .mbm contenente le icone
dell'applicazione, inserirne il percorso nella prima riga, altrimenti
premere CREATE e passare al paragrafo su come creare i file .MBM.
Passare alla tab successiva:
Qui si può scegliere se l'applicazione avrà nomi diversi a seconda della lingua installata sul cellulare.
A questo punto, premere il pulsante GENERATE per creare i file .APP e
.AIF, più un file .TXT usato dal sistema per avviare
l'applicazione Java.
Questi tre file, insieme al file .jar, dovranno essere collocati nella cartella \system\apps\MyAppName
del cellulare (manualmente o tramite file .SIS). Facendolo manualmente,
l'applicazione non comparirà subito nella lista applicazioni:
dovrà essere avviata la prima volta a mano tramite file manager.
Crezione file .MBM:
Lanciare AIFBUILDER e cliccare su CREATE nella seconda schermata (vedi paragrafo precedente); si aprirà questa schermata:
Qui è possibile disegnare a mano l'icona, oppure caricare un file BMP esterno.
NOTA BENE: QUESTO PROGRAMMA PRESENTA UNA SECONDA SCHERMATA, per disegnare l'icona ad alta risoluzione:
NOTA 2:
Se si hanno pià SDK installati, potrebbero non comparire le dimensioni corrette per le icone da creare.
Ogni icona è formata
dal disegno vero e proprio e dalla "maschera" (mostrata nel riquadro
destro): tutto ciò che nella maschera è bianco,
apparirà trasparente sul telefono.
Lanciare un programma PersonalJava sull'emulatore:
è necessario che siano correttamente impostate le variabili di ambiente EPOCROOT , _EPOC_DRIVE_J e EPOC_DRIVE_T
: la prima indica dov'è installato l'SDK, la seconda e la terza
"attivano" due drive virtuali sull'emulatore (J: e T:), e indicano dove
si trovano le classi Java dell'emulatore (in genere in c:\symbian\uiq_21\epoc32\java e c:\symbian\uiq_21\erj).
Si possono impostare le variabili definitivamente in Windows, o solo per la sessione DOS corrente usando questo file batch:
:@echo off
rem pjava Launcher
rem Copyright (c) 1999-2003 Symbian Ltd. All rights reserved.
if "%_epoc_drive_j%"=="" if exist "%epocroot%epoc32\java" set _epoc_drive_j=%epocroot%epoc32\java
if "%_epoc_drive_t%"=="" if exist "%epocroot%erj" set _epoc_drive_t=%epocroot%erj
if not "%_epoc_drive_j%"=="" echo _epoc_drive_j=%_epoc_drive_j%
if not "%_epoc_drive_t%"=="" echo _epoc_drive_t=%_epoc_drive_t%
perl -S pjava.pl %1 %2 %3 %4 %5 %6 %7 %8 %9
:END |
Copiare poi il file .jar nel percorso C:\Symbian\UIQ_21\epoc32\Java\ext (il classpath dell'emulatore)
Fatto ciò, digitare:
pjava_g MyAppName.class
per lanciare l'applicazione sull'emulatore: dovrebbe partire in background, per cui usare CTRL+ALT+SHIF+T per attivarla.
Notare che chiudendo l'applicazione Java si chiuderà in questo
caso anche l'emulatore: per lasciarlo aperto, avviarlo a parte e
lanciare l'applicazione dall'emulatore.
Indice degli appunti di programmazione:
Appunti di programmazione in ambiente Symbian
C++
Usare Carbide.c++
Importare un progetto in Carbide.c++ da un file .MMP
Compilare un eseguibile Symbian .exe multiplatform
Appunti di programmazione PersonalJava
Compilare un'applicazione PersonalJava, creare i file .APP, .AIF e .TXT per lanciarla, e installarla sull'emulatore.
Appunti di programmazione Java Midlet