Cerca con Google

Translate

29 gennaio 2014

Tutorial 2 - Installare ed utilizzare emulatore Android con MIT App Inventor


Vediamo in questo secondo tutorial come possiamo diventare degli sviluppatori di app per Android anche se non disponiamo di uno smartphone con questo sistema operativo.

Infatti dalla pagina del MIT sarà possibile scaricare un software che ci metterà a disposizione un emulatore funzionante e completo al 100% di un dispositivo Android su cui potremmo testare tutte le nostre app.

Ovviamente l'uso di uno smartphone vero e proprio è sempre consigliato e l'emulatore ha alcuni svantaggi tra cui i principali sono:
1 - lentezza nell'esecuzione dei programmi
2 - mancanza di alcuni componenti (come fotocamera, accelerometro, sensore gps, etc...)
3 - possibilità (al momento) di emulare solo un Android con versione 2.2 e risoluzione 320x480
Ma se non abbiamo altre alternative questa è la strada da seguire, quindi seguite attentamente le seguenti istruzioni ed in poco tempo potrete testare le vostre app su questo emulatore.

La guida è relativa ai sistemi Windows (Xp, vista, 7, 8 e 8.1) per Mac o Linux il procedimento cambia di poco.
Io creato questo tutorial usando Windows 7.

Per prima cosa andiamo all'indirizzo da cui è possibile scaricare il software necessario:

http://explore.appinventor.mit.edu/ai2/setup-emulator

scarichiamo il software (circa 100Mb) , attualmente giunto alla versione 2.2 cliccando qua (http://appinv.us/aisetup_windows) anche se vi consiglio di controllare all'indirizzo di qui sopra se sono uscite versioni più nuove del setup software.

Localizziamo il file scaricato (si chiama AppInventor_Setup_Installer_v_2_2.exe), a diamo il solito doppio click per far partire l'installazione.

Importante: per il corretto funzionamento dovete usare un utente con i permessi di amministratore


Clicchiamo ovviamente su SI e NON cambiamo la directory che ci propone per l'installazione:

non cambiate la destinazione proposta

Ad installazione terminata tutto il software sarà stato installato nella cartella che vedete qui sotto
(C:\Program Files (x86)\AppInventor\commands-for-Appinventor), verificate che sia tutto come da immagine:


A questo punto un'altra nota importante che vi eviterà tanti problemi...

Riavviate il vostro PC prima di proseguire nei prossimi passi!!!

Ok, ora che avete riavviato il pc vi troverete con un nuovo programma chiamato "aiStarter", lo trovate nel desktop e nel menù start.

l'icona di aiStarter che troverete sul desktop
Come avrete intuito questo è il "cuore" dell'emulatore, quindi per farlo partire doppio click su di esso, se tutto va bene vedrete aprirsi una finestra dos come qui sotto:

se vedete queste scritte aiStarter è in esecuzione corretttamente
A questo punto possiamo passare al nostro progetto creato con App Inventor, scegliamo il progetto da testare e clicchiamo su "Connect - Emulator" come vedete qui:


Ora a seconda della potenza del vostro pc, l'emulatore Android verrà inizializzato, le schermate che vedrete sono in sequenza queste:

Queste sono le prime informazioni di debug che ci fan capire che l'emulatore sta partendo


Il tempo può variare da qualche minuto a qualche decina di minuti (su pc più datati), armatevi di pazienza ma se avete fatto tutto giusto arriverete allo step 3, tranquilli!

Dopo un'ulteriore breve attesa finalmente avremo la nostra App in esecuzione sull'emulatore!!!

L'emulatore in funzione, la nostra App è stata scaricate e sta girando correttamente sull'emulatore

A questo punto dovete solo concentrarvi sulla programmazione della vostra app.
Buon App Inventing!!!

Per finire vi do un paio di suggerimenti se doveste aver problemi:
1 - Verificate di non avere un firewall che blocchi la porta 5554, se avete dubbi provate a disabilitarlo temporaneamente 
2 - Se non vi aggiorna gli elementi della vostra app (le immagini non appaiono, i testi non si aggiornano...) nell'emulatore, potete resettarlo, per farlo date da menù il comando "Connect - Reset connection". Questo chiuderà l'emulatore (kill), fatelo quindi poi ripartire come visto in questo tutorial
3 - Se l'emulatore vi da problemi potete provare a chiuderlo, poi andare nella directory C:\Users\seblogapps\.appinventor\emulator (dove ovviamente al posto di "seblogapps" avrete il vostro nome utente di Windows), cancellate tutta la cartella "emulator" e provate a riavviare il pc e far ripartire "aiStarter"
4 - Per ora l'emulatore funziona solo con Chrome o Firefox, Internet Explorer NON usatelo per App Inventor
5 - Qui trovate un sacco di consigli (in inglese) per ogni altro possibile problema (http://explore.appinventor.mit.edu/ai2/connect-help-emulator)

Se invece preferite le classiche video guide, trovate qui il mio tutorial su YouTube:


Per ogni problema o commento usate lo spazio qui sotto, grazie!!!

26 commenti:

  1. il mio pc, purtroppo, è datato. Funziona bene invece la connessione wireless anche se ogni tanto si impalla.

    RispondiElimina
  2. Certo, la connessione wifi e l'uso di uno smartphone sono l'accoppiata migliore per AI2, questa guida è per chi non ha la fortuna di avere uno smartphone ma non per questo vuole rinunciare alla programmazione delle proprie App!

    RispondiElimina
  3. Ciao. Non riesco a connettere l' emulatore al sito. Quando lo lancio mi rimane per ore il mess:"Starting the Android Emulator", e non accade nulla. Ho disattivato i FireWall. Ho riavviato il PC dopo aver installato il software. Ho abilitato la visualizzazione dei file nascosti. NON trovo la cartella C:utenti/USER/.appinventor/emulator. Aiutami a trovare l' inghippo...ciauz e grz

    RispondiElimina
    Risposte
    1. che sistema operativo usi? potresti provare su un altro pc?
      La cartella è C:\Users\TUONOMEUTENTE\.appinventor\emulator
      dove ovviamente al posto di TUONOMEUTENTE ci sarà il nome del tuo utente di windows.
      Suggerisco di disinstallare tutto, riavviare il pc, cancellare la cartella temporanea e reinstallare tutto come da istruzioni.
      Usi la versione 2.2 del setup vero?
      spero che così tu possa risolvere, non avendo fatto io questi software più di così non riesco ad aiutarti mi dispiace!

      Elimina
    2. SO win 7 (64 bit), versione del setup 2.2. Ho disinstallato e reinstallato tutto, cancellato la certella C:\Utenti\cristian\.appinventor\emulator (che ora è presente), ho riavviato la macchina. Adesso parte l'emulatore, ma si ferma al "50% Charging", e la finestra DOS(aiStarter), mi da questo msg:
      127.0.0.1 - - [07/Feb/2014 21:47:15] "Get/echeck/ HTTP/1.1" 200 38
      ""C:\Program Files (x86)"AppInventor\commands-for-Appinventor\adb" non è ricono
      sciuto come comando interno o esterno,
      un programma eseguibile o un file batch.
      Problem checking for devices : status 1
      Ho letto in vari blog che la versione win 64 bit da problemi, al momento non posso verificare su altro PC.
      Ti ringrazio per l' aiuto..

      Elimina
    3. Io uso Win7 64 bit e non ho alcun problema... :)
      sembra un problema legato al riconoscimento dell'eseguibile adb.exe, controlla se è presente nella cartella dove hai l'errore ovvero C:\Program Files (x86)"AppInventor\commands-for-Appinventor\
      mi dispiace ma i suggerimenti che ti posso dare sono quelli che ti ho già dato in precedenza, non saprei più che dirti, magari a breve esce una versione 2.3 che risolve il tuo problema, incrociamo le dita!

      Elimina
    4. Disinstallato tutto , e reinstallato per la 3 volta, riavviato la macchina. Ora l' emulatore funziona bene...non mi spiego per quale motivo, ma questa è stata la mia esperienza.....spero che serva ad altri che leggeranno questo blog, e magari incontreranno gli stessi problemi...Detto questo VOTO 10 a Sebastiano, i suoi Tutorial sono chiarissimi, risponde immediatamente ai post del blog. Ciauz e Grz. :)

      Elimina
  4. ciao, l'emulatore mi fa impazzire! ho seguito la procedura, ma una volta che avvio l'aiStarter, e richiedo la connessione all'emulatore, sulla finestra di dos le stringhe di debug non procedono, si fermano alla seconda. Se vado su c:\utenti\mioutente non c'è nessuna cartella .appinventor, nonostante i file nascosti siano visibili. In più firewall e antivirus non danno problemi, avendo provato a disattivarli senza risultato. Ho disinstallato e reinstallato app inventor più volte senza nessun risultato. non so proprio più che fare!

    RispondiElimina
  5. Io ho un problema diverso,
    quando avvio l'emulatore, questo parte e sembra procedere tutto bene ma ala fine, quando oramai ho già il mio bel telefono simulato con schermata home di android e possibilità di utilizzarlo come fosse un vero cellulare, AI mi segnala che la versione del mio emulatore è vecchia e deve essere aggiornata, invitandomi a premere ok e ad accettare le eventuali richieste successive.
    Premo ok ma non succede più niente... l'emulatore resta acceso ma non comunica con ai2.
    Ho provato anche disattivando completamente l'antivirus ed il relativo firewall...
    qualcuno ha avuto lo stesso problema?
    Grazie

    RispondiElimina
    Risposte
    1. Dimenticavo:
      stesso comportamento su windows xp sp3 e windows7 64 bit

      Elimina
    2. Dovrebbe aggiornarsi da solo, qui trovi più info:
      http://appinventor.mit.edu/explore/blogs/jeff/2014/02/time.html
      se hai ancora difficoltà ti consiglio di disinstallare la tua versione del sw di App Inventor (guarda nel link qui sopra che versione hai di AiCompanion, alcune vanno aggiornate manualmente) e scaricare la più recente
      che ad oggi è la 2.2
      http://appinv.us/aisetup_windows
      nel caso ancora non funzionasse devi caricare a mano l'apk del companion nell'emulatore, l'apk lo scarichi da qua:
      http://qyv.me/xAI2cf34
      se apri questo indirizzo direttamente dall'emulatore ti scarica il file apk e puoi procedere direttamente all'applicazione da li.
      Ovviamente l'emulatore deve riuscire ad accedere ad internet (ma di solito se sei connesso ad internet col tuo pc anche l'emulatore va su internet senza problemi)
      fammi sapere se risolvi, ciao

      Elimina
    3. Ciao Sebastiano,
      ho risolto caricando a mano l'apk. Grazie del consigli oanche se devo dire che con l'emulatore ti passa la voglia di programmare... lentissimo, incompleto, insomma....non lo uso più ;)
      In realtà mi serviva l'emulatore per testare l'app in un ambiente "non a casa mia" dove non ho il wifi per connettermi come faccio a casa ma dove non posso scaricare l'apk direttamente dall'emulatore causa impostazioni di sicurezza e proxy aziendale ;)
      So di andare un po OT ma sapresti consigliarmi qualcosa per connettere il mio cel via usb? Il telefono è un Nexus 5 e mi sembra di capire che il problema sono i driver. Hai qualche idea?
      Grazie ancora per il tuo preziosissimo aiuto.
      Nello

      Elimina
    4. Con il companion puoi collegare il tuo pc al nexus 5 e non usare quindi la connessione wifi, ti basta installare i driver giusti adb per il nexus 5 (puoi usare gli universal naked driver che trovi su xda)
      altrimenti puoi scaricare ed installare GenyMotion che offre un emulatore veramente veloce, purtroppo non si riesce a collegare AI a Genymotion (per il momento) ma puoi scaricare l'apk sul tuo pc e poi lo carichi in GenyMotion con un semplice drag-and-drop
      Ti consiglio vivamente di provare GenyMotion!

      Elimina
    5. Come al solito hai ragione da vendere. Ho provato il companion con i drivers naked di xda e funziona benissimo.
      Non ho ancora provato l'emulatore che mi hai consigliato, lo farò presto.
      Grazie ancora per l'aiuto

      Elimina
  6. Vorrei realizzare un'applicazione in grado di inviare dati ad un arduino o raspberry via bluetooth. Infatti la mia idea è quella di realizzare un garage telecomandabile da telefono. Ora vorrei sapere: c'è modo di far girare questa applicazione realizzata con appinventor senza l'uso di connessione wifi?

    RispondiElimina
  7. Ho un problema con l'emulatore. Tutto funziona perfettamente ma non riesco ad ingrandire la finestra. Quelle di debug si aprono ma quella dell'emulatore la vedo soltanto ridotta ad icona. Quando cerco di ingrandirla lo schermo lampeggia e mi ritorna il desktop. Ho installato e disinstallato diverse volte l'applicazione e anche java. Niente da fare.

    RispondiElimina
    Risposte
    1. Ti consiglio di leggere tutte le possibili soluzioni scritte nell'articolo, purtroppo l'emulatore da problemi a diverse persone, consiglio sempre di partire da una situazione pulita, disinstallare tutto, riavviare e riprovare.
      Controlla anche dal sito del MIT se per caso è uscita una versione nuova del software da scaricare (siamo alla 2.2)
      incrocio le dita anche per te :)

      Elimina
  8. Ciao Seba, sei un grande!
    Volevo sapere, l'emulatore funziona con la versione in locale ai2livecomplete?
    ho installato l'emulatore android SDK e funziona benissimo, ma come carico le app su quell'emulatore?
    Grazie x tutto il lavoro che fai, mi è preziosissimo!!!

    RispondiElimina
    Risposte
    1. preciso, dove devo lavorare, ovviamente, non ho ne wifi ne internet... :-(

      Elimina
    2. Allora, con Ai2LiveComplete hai una versione di MIT AI Companion da installare che lavora insieme ad Ai2LiveComplete,
      questo apk (lo trovi nel file .zip del progetto) va installato nell'emulatore ma che io sappia purtroppo non funziona l'emulatore dell'SDK con Ai2 (e quindi neanche con Ai2LiveComplete) e quindi si può usare solo col suo emulatore incluso in Ai2LiveComplete.
      Io mi trovo bene con GenyMotion, quello si può usare sia con Ai2LiveComplete che con Ai2, crei un emulatore in GenyMotion e lo colleghi al comando "adb" (è nelle opzioni di GenyMotion) a quel punto lavori come se avessi il cellulare collegato oppure se vuoi scarici gli apk e li installi in GenyMotion tramite trascinamento.

      Elimina
  9. Ciao Sebastiano :D ho un grosso problema: se ad ogni click di un pulsane voglio cambiare il testo di una label in un elemento random di una lista, come faccio a non farlo ripetere ?
    Grazie mille in anticipo :D

    RispondiElimina
    Risposte
    1. Il fatto stesso che sia random non implica che il numero casuale non venga ripetuto, per fare quello che tu chiedi devi modificare la lista ad ogni estrazione del numero random per visualizzare l'elemento scelto ma al tempo stesso rimuoverlo dalla lista, così al prossimo click non verrà mai fuori l'elemento precedentemente selezionato.
      Se non vuoi perdere i dati della lista originale ne puoi creare una copia su un'altra variabile e lavorare su quella.

      Elimina
  10. Ho Windows 7 64 bit. L'emulatore viene caricato, ma quando mi deve far vedere il progetto lo schermo è completamente bianco e senza pulsanti. Puoi aiutarmi? Grazie

    RispondiElimina
    Risposte
    1. Ciao, hai aspettato abbastanza a lungo? ti consiglio di verificare bene la versione di java installata , di disabilitare eventuale firewall e/o antivirus.
      Eventualmente provare a disinstallare, riavviare il pc e reinstallare AI starter.
      Male che vada sul mio canale youtube trovi le istruzioni su come usare l'emulatore di Android SDK in App Inventor

      Elimina
  11. Ho una domanda:
    Si può installare apk sull' emulatore?
    P.S. ho win xp.
    Grazie in anticipo!

    RispondiElimina
  12. Ciao
    ho un problema
    quando attivo con l'emulatore l'uso dello scanner
    non riesco a far selezionare il qrcode da leggere come devo fare? c'e' qualche impostazione da settare?

    RispondiElimina