Phonegap/Cordoba si installa mediante Node.js per cui si deve prima installare il pacchetto Node.Js
Su Windows e MacOs c'e' un semplice installare mentre su Linux Node.js si installa scaricando direttamente i sorgenti e con la classica procedura
./configure
make
make install
(la procedura non e' rapidissima)
successivamente si inizia ad installare Phonegap con il comando
npm install -g phonegap
(forse e' inutile ma ho installato anche Cordova)
npm install -g cordova
si crea quindi il progetto
phonegap create hello com.example.hello HelloWorld
cd hello
e qui iniziano le differenze che ho trovato con le istruzioni ufficiali del sito
per creare il progetto Phonegap Android si deve dare direttamente il comando
phonegap build android
(devono essere setttata la Path per trovare la directory tools e platform-tools dell'SDK di Android altrimenti il comando fallisce con il comando
)
oppure
phonegap build ios
per lanciare l'esecuzione sul telefono
phonegap run android
oppure
phonegap run ios
(se non viene trovato il telefono fisico viene lanciato in automatico l'emulatore.
Nel caso di IOS deve essere prima installato il pacchetto ios-sim con i comandi
sudo su
xcodebuild -license
npm install -g ios-sim
)
Lanciato il comando l'emulatore parte ma si arriva a questo errore
Di fatto la directory www del progetto creato su Ios risulta vuota (c'e' solo un file .xml). Per risolvere il problema l'unica soluzione che ho trovato e' stata quella di copiare la directory www da un progetto Phonegap creato su Linux. Fatto cio' tutto inizia a funzionare perfettamente
A questo per aggiungere funzionalita' legate all'hardware dei telefoni si devono installare i plugin per le varie funzionalita'. Per test e' stato scaricato ed attivato il
cordova plugin add org.apache.cordova.device
Ed ecco lo stesso programma di esempio che funziona, senza modifiche, sulle due piattaforme Android ed Ios
Phonegap su Ios |
Phonegap su emulatore Android in Ios |
si puo' aggiungere al progetto anche FirefoxOs mediante
cordova platform add firefox
il problema e' che l'emulatore di Firefox Os non funziona sotto Mac Os X (almeno al momento in cui scrivo questa riga). Parte e si chiude dopo qualche secondo. Per ovviare al problema ho spostato tutta la cartella della piattaforma Firefox sull'emulatore di Windows e selezionato il file manifest.
Si osserva che il supporto di Phonegap a Firefox e' ancora poco maturo in quanto le API ancora non funzionano (almeno quelle dell'esempio)