mercoledì 26 aprile 2017

Installare MIT App Inventor 2 su Windows in locale

Per poter superare tutti i limiti di MIT App Inventor 2, c'è una cosa che potete fare, anzi due: installarlo sul vostro computer in locale, e modificarlo creando nuovi componenti e/o estensioni.

Più facile a dirsi che a farsi ovviamente, ma andiamo per ordine: installare app inventor 2 in locale, sul proprio pc di casa, che magari ha su windows.
Questa operazione, richiede un po' di pazienza, per poter eseguire con successo tutti i vari passaggi, che immancabilmente vi riporteranno qualche errore e/o grattacapo da risolvere.


Come installare MIT App Inventor 2 su Windows in locale


Per far girare app inventor 2 in locale, occorre prima soddisfare una serie di requisiti:
  1. Installare l'ultima versione di Java (o guardare sul sito MIT la minima necessaria, attualmente la 7)
  2. Installare ANT per Windows (leggere qui su come fare)
  3. Installare GIT
  4. Installare ADB Android Debug Bridge (qui le istruzioni)
  5. Installare AppEngine sdk
  6. Sistemare le variabili d'ambiente (leggere qui)

Dopo aver soddisfatto questi requisiti base, forse avrete meno grane durante l'installazione di app inventor su windows (e non).

Andiamo subito a scaricare il file zip contenente tutti i file necessari per l'installazione, da questo indirizzo:

https://github.com/mit-cml/appinventor-sources

Estrarre lo zip su una cartella del proprio computer, es: c:\appinventor

Adesso, aprire il prompt dei comandi di windows, entrare dentro la cartella di appinventor, fino ad arrivare (tramite il classico comando dos cd nomecartella) a dove è presente un file chiamato build.xml, nella root di app inventor (ad esempio in: C:\appinventor\appinventor), poi digitare:
  • ant clean + INVIO: puliamo/prepariamo l'ambiente per la compilazione, passaggio necessario ogni volta che si vuole rifare il built
  • ant MakeAuthKey + INVIO: otteniamo una chiave segreta che serve al programma
  • ant + INVIO: la compilazione vera e propria

Se tutto sarà andato a buon fine, dopo diversi minuti di compilazione verrà riportato a video il messaggio: BUILD SUCCESSFUL.

Installare MIT App Inventor 2 su Windows in locale

Possibili errori di questi passaggi (es. "cannot run program git"), sono quelli dovuti all'ant path e a git, entrambi risolvibili tramite una corretta configurazione delle variabili d'ambiente.

Build fallito

variabili d'ambiente per app inventor

Git per windows lo trovate al seguente indirizzo.

Inoltre, un altro problema che ho riscontrato durante la compilazione, è che non trovava alcuni file presenti nelle cartelle blocky e closure-libray, dentro la cartella lib di app inventor.
In questo caso, dopo averci perso molto tempo, ho scoperto che il problema (temporaneo credo), era la presenza del carattere @ dentro le cartelle di github online. E' bastato riscaricare singolarmente le cartelle e rinominarle senza tutto ciò che era scritto dopo la chiocciola (e cancellare le corrispettive cartelle vuote in locale), per far funzionare il tutto.

Risolvere problema cartelle vuote

Un'altra cosa da fare è installare app inventor companion app.
Questo strumento serve per poter testare le proprie app da cellulare tramite wifi, e va ricompilato ogni volta che si modifica la piattaforma appinventor (es. aggiungendo nuovi componenti).
In realtà la prima volta forse non è necessario compilarlo, comunque il comando da lanciare (dopo aver collegato il telefono al pc con il cavo usb) da dentro la root di appinventor è:
ant installplay

Se per caso dovesse generare qualche errore, ciò potrebbe dipendere dalla mancata presenza dell'adb (Android Debug Bridge), da installare ed impostare correttamente come variabile d'ambiente.

Bene, adesso diciamo che il più quasi fatto.
Ora, per poter lanciare app inventor sul proprio pc con su windows, occorre usare l'app engine.

Trattasi di un altro componente java, che consente di lanciare app java tipo webserver, le quali consentono di far aprire il sito/applicazione dal browser, collegandosi ad un indirizzo locale della macchina.

In soldoni, dopo aver installato appengine sdk java (scaricabile da qui), occorre lanciare il comando dev_appserver.sh, indicandogli la porta, l'indirizzo del server, ed il percorso fisico dell'appengine nostra app.

Ad esempio nel mio caso, il comando da lanciare dal prompt di dos sarà una cosa del genere:
cd C:\Program Files\appengine-java-sdk-1.9.51\bin\
dev_appserver.sh  --port=8888 --address=0.0.0.0 C:\appinventor\appinventor\appengine\build\war\

Con il primo comando mi posiziono nella cartella dell'appengine java del mio pc (se non l'ho mappata come path di sistema), con il secondo comando invece, lancio app inventor per windows.
Ovviamente è consigliato crearsi un bat che fa in automatico queste ultime azioni, lanciando di fatto appinventor con un click.

Dovrebbe anche partire una finestra java che vi chiede il consenso alla connesione remota, nel caso abbiate qualche firewall, datelo senza problemi.
Ovviamente, per poter girare, serve un java aggiornato (scaricabile da qui), come dicevo sopra.

Bene, adesso basterà aprire il browser (sconsigliato fortemente internet explorer), e collegarsi al seguente indirizzo:
http://127.0.0.1:8888/

Vi verrà chiesta user e password, ma se cliccherete su "Click Here to use your Google Account to login", di fatto finirete in una pagina dove vi basterà inserire una mail per entrare senza password (dopo aver dato il consenso ai termini del servizio).
L'utente indicato servirà anche per la generazione dei pacchetti che andrete a creare con app inventor 2 per pc.

login app inventor

Accedi

Bene, ora, dopo tanta fatica, sarete finalmente dentro il vostro mit app inventor personale, e potrete iniziare subito a creare un nuovo progetto, oppure ad importare uno di quelli che avevate creato online.

App Inventor 2 in locale

Tutto finito? In realtà no.
Per poter creare applicazioni con il vostro app inventor 2 offline (o quasi), dovrete lanciare il BuildServer.
Trattasi dello strumento che consente di generare gli apk, i file che poi si installano sul vostro telefono, i file che consentono la distribuzione della vostra app sul google play store.

Per lanciare il buildserver machine, bisogna spostarsi tramite prompt di dos nella root di appinventor, e poi nella cartella buildserver, ed infine digitare il comando:
ant RunLocalBuildServer
Se il risultato sarà "Server running", allora il buildserver starà girando correttamente, e potrete generare tranquillamente gli apk.
Per testare il build server potrete digitare questo indirizzo:
http://127.0.0.1:9990/buildserver/vars
o questo:
http://127.0.0.1:9990/buildserver/health
che vi restituirà semplicemente OK, in caso positivo.
Oppure, provare direttamente a generare l'apk dalla piattaforma appinventor.

BuildServer in azione

Per comodità quindi, se create un bat che vi lancia app inventor 2 server, aggiungete anche il comando per lanciare il buildserver, così da non doverlo fare ogni volta a mano.
Se vi dimenticate di lanciare il buildserver, quando proverete a generare un apk, l'app vi darà errore.

E' tutto.
Trovate quanto scritto sopra, più dettagliatamente, ma in inglese, a questo indirizzo.

Tornare all'elenco delle lezioni

Piaciuto l'articolo? Lascia un commento!

EmoticonEmoticon