Una parte fondamentale della creazione di applicazioni Android è in esecuzione e testarli. Testare il codice e l'implementazione dell'app su dispositivi reali è importante, ma emulando altri scenari e avendo la convenienza, la protezione e i risparmi sui costi di non possedere tutti i dispositivi Android mai creati mantiene lo sviluppo realistico. Scopri come creare dispositivi virtuali Android (AVD) in questo tutorial.
Questo tutorial è per lo sviluppatore Java appena iniziato ad imparare Android, che ha familiarità con Eclipse, e ha installato Android SDK e Android Developer Plugin per Eclipse ed è pronto per eseguire l'emulatore. Se non hai preparato come tale, consulta i tutorial precedenti di questa serie.
Iniziamo creando un semplice AVD di serie che rappresenti un dispositivo Android abbastanza generico. Questo AVD sarà la tua configurazione "goto" quando avvii la tua app per test e debug.
Il modo più semplice per avviare Android Virtual Device Manager è fare clic sul pulsante della barra degli strumenti di Android che sembra un piccolo telefono da Eclipse. Questo avvierà lo strumento, come mostrato, e mostrerà tutte le configurazioni AVD che hai già creato.
Ora fai clic sul pulsante Nuovo ... da Gestione dispositivi virtuali Android. Ti verrà presentata una finestra di dialogo per inserire alcuni dettagli di configurazione sul tuo AVD:
Non sono necessarie molte informazioni per creare un AVD di base. Assegna all'AVD un nome descrittivo (come "AVD-API16") e scegli la piattaforma di destinazione come "Android 4.1 - API Level 16". La CPU / ABI viene scelta automaticamente, ma è necessario che almeno un'immagine di sistema sia stata scaricata per farla apparire. Scegli una dimensione della scheda SD. Per gli AVD di test di base, solitamente usiamo 64 MB per le dimensioni della scheda SD, ma tieni presente che questo spazio verrà bloccato sulla tua macchina di sviluppo, quindi se creerai molti AVD occuperanno molto spazio. Lascia il resto delle opzioni come predefinite per ora.
Premere il pulsante Crea AVD. Il processo di creazione di AVD può richiedere alcuni minuti. Una volta completato, tornerai all'elenco di AVD, con quello appena creato ora disponibile.
Gli AVD sono fondamentalmente definizioni che indicano come configurare l'emulatore Android. Anche lanciare un AVD e avviare l'emulatore. Esistono diversi modi per avviare un AVD. All'interno di Eclipse, alcune opzioni includono l'avvio automatico di un emulatore con un AVD specifico quando si avvia il debug, l'avvio manuale all'avvio del debug e il semplice avvio tramite Android Virtual Device Manager. Consigliamo di avviare AVD in anticipo tramite Gestione dispositivi virtuali Android prima di eseguire la compilazione e il debug del codice effettivo. In questo modo, l'emulatore e l'AVD sono attivi e in esecuzione prima dell'avvio del debug. Questo è il metodo che useremo ora.
Nota: Se stai venendo qui con l'esperienza di Android, questo tutorial viene tecnicamente prima del debug, quindi non lo faremo ancora.Se non si è già in AVD Manager, avviarlo ora. In genere, lo fai con il pulsante che assomiglia ad una piccola icona del telefono (come abbiamo fatto nella Parte 1, Passo 1).
Ora selezionare l'AVD che si desidera avviare e premere il pulsante Avvia .... Avrai una finestra di dialogo come questa.
Partendo dal basso (e meno complesso), vedrai due opzioni di istantanea. Salva su snapshot significa che quando si esce dall'emulatore, lo stato dell'emulatore verrà salvato. Questo richiede un po 'di tempo per la configurazione, a seconda della quantità di RAM fornita all'emulatore. L'avvio da snapshot significa che l'emulatore utilizzerà un'istantanea salvata in precedenza per il ripristino. Quando ne esiste uno, i tempi di avvio sono molto veloci rispetto all'avvio a freddo senza la funzione di snapshot.
Il prossimo è un'opzione per cancellare i dati dell'utente. In pratica questo ripristina l'AVD in uno stato nuovo, proprio come un reset di fabbrica. Esistono molti scenari di test in cui desideri una bella lavagna chiara, anche se dopo aver sviluppato e testato la tua applicazione, è più probabile che i dati utente restino bloccati mentre si eseguono scenari di test più profondi e più ampi.
Successivamente, è possibile ridimensionare il display dell'emulatore sulla dimensione reale dello schermo fisico. Ciò significa che, se i numeri sono stati scelti correttamente, la schermata dell'emulatore sul tuo monitor apparirà con le stesse dimensioni dello schermo di un dispositivo. La densità dei due dispositivi (il monitor del computer e lo schermo del dispositivo) è probabilmente diversa, quindi verrà utilizzato un numero diverso di pixel sul monitor del computer (solitamente meno, a meno che non si disponga di un monitor ad alta densità o si stia simulando una bassa densità dispositivo). Premendo il piccolo "?" il pulsante mostrerà un'altra finestra di dialogo che fornisce alcune risoluzioni dello schermo campione e dimensioni del monitor e compila alcuni dettagli. Copre un'ampia varietà di casi comuni, ma certamente non tutti.
La seguente figura mostra una configurazione di esempio. Abbiamo usato le impostazioni per disegnare lo schermo WVGA800 su un comune monitor da 24 "1080p a 4" di diagonale. I nostri desktop hanno monitor multipli (di dimensioni diverse), quindi dovremo tenerlo a mente quando spostiamo l'emulatore tra gli schermi.
Il valore Scala implica che utilizzerà il 40% di pixel in meno sia verticalmente che orizzontalmente. Questo non è il posto dove cercare i dettagli a livello di pixel, piuttosto è il posto dove cercare un utile dimensionamento, come se un pulsante sia abbastanza grande da poter essere toccato con un dito.
Se si lascia questa opzione disattiva il pixel dello schermo dell'emulatore per il pixel sul monitor. Questo è il modo in cui di solito lo usiamo a meno che non ci stiamo concentrando sulla progettazione UI / UX.
Ora premi il pulsante Avvia. L'emulatore inizierà. Nella sua forma attuale, l'emulatore impiegherà un po 'di tempo per avviarsi la prima volta. I lanci successivi saranno più veloci. Alcuni strumenti ed extra possono essere utilizzati su alcune macchine per velocizzare notevolmente l'emulatore. Ecco uno schermo di emulazione ridimensionato a 4 "su un monitor 1920x1080 da 24".
Gli AVD hanno molte opzioni per controllare le dimensioni dello schermo, le dimensioni della memoria, i tipi di input e molte altre caratteristiche che si trovano sui dispositivi hardware Android. Abbiamo spiegato come configurare AVD per vari tipi di dispositivi in configurazioni di dispositivi virtuali Android comuni e configurazioni di dispositivi virtuali per tablet Android. Questa sezione non ripeterà questa informazione. Invece, parleremo di un altro modo per creare AVD che imitano da vicino i dispositivi Android più diffusi: utilizzando componenti aggiuntivi forniti dal produttore.
Hai imparato come scaricare componenti aggiuntivi utilizzando Android SDK Manager. Scegli un dispositivo e scarica il componente aggiuntivo. Abbiamo scelto l'ICS_R2 di Motorola per questa dimostrazione, che è un nome un po 'difficile da capire e che offre davvero un add-on per il portatile Atrix HD.
Apri la Gestione dispositivi virtuali Android. Iniziare a creare un nuovo AVD come al solito. Nella sezione Target, seleziona "ICS_R2 (Motorola Mobility, LLC.) - Livello API 15." Questo riempirà una varietà di opzioni AVD per te, inclusi molti flag hardware e skin. Fai clic su Crea AVD.
Un'impostazione che questo "preset" non fa è impostare le dimensioni dello schermo. Se conosci le dimensioni dello schermo che desideri emulare, puoi inserire le dimensioni fisiche del dispositivo e impostare il DPI del monitor della tua macchina di sviluppo, come abbiamo fatto in precedenza.
Avviare l'AVD utilizzando uno dei seguenti
e diversi metodi descritti in precedenza. Vedrai immediatamente alcune differenze:
Ma non lasciare che tutte queste differenze ti facciano pensare che stai utilizzando il vero dispositivo. Non lo sei. Questo è ancora l'emulatore e non può sostituire il test sul dispositivo reale. Quando si tratta di app di magazzino e API di terze parti, tuttavia, sarà possibile eseguire il test in modo molto più accurato rispetto alle configurazioni di emulatore Android generiche. Molti componenti aggiuntivi sono dotati di nuove immagini di sistema che contengono molti degli aggiornamenti dei produttori che non si trovano nelle versioni di base. C'è una presa, però. La maggior parte delle immagini di sistema del produttore non vengono fornite con le app Google, mentre i dispositivi reali lo fanno.
Hai imparato come creare AVD per una varietà di tipi di dispositivi Android. Hai imparato a lanciare l'emulatore usando questi AVD. Se sei come noi, non passerà molto tempo a pulire l'elenco AVD perché ne hai creati troppi che non usi; a fini organizzativi, ti consigliamo vivamente di utilizzare nomi descrittivi per i tuoi AVD in modo da poter dire cosa ti ha portato a crearli in primo luogo!.
Sei sulla buona strada per lo sviluppo di Android. Quali tipi di app non vedi l'ora di creare? Fateci sapere nei commenti!
Gli sviluppatori mobili Lauren Darcey e Shane Conder hanno coautore diversi libri sullo sviluppo di Android: un libro di programmazione approfondito intitolato Sviluppo di applicazioni wireless Android (ora nella sua terza edizione come un set di due volumi), Sams ti insegna a sviluppare applicazioni Android in 24 ore, e Apprendimento della programmazione di applicazioni Android per Kindle Fire: una guida pratica per creare la tua prima applicazione Android. Quando non scrivono, passano il loro tempo a sviluppare software mobile presso la loro azienda ea fornire servizi di consulenza. Possono essere contattati via email a [email protected], tramite il loro blog su androidbook.blogspot.com e su Twitter @androidwireless.