Domanda

Non sono sicuro se qualcun altro ha notato, ma i Gingerbread corre emulatore come un cane, sia con lo scorrimento, la navigazione, l'interazione - tutti di prendere molto più a lungo e di essere molto choppier. Ho anche avuto un ANR nel browser quando ho provato ad usarlo: http://www.androidpolice.com/2010/12/06/walkthrough-and-hands-on-with -la-gingerbread-ui-la-nuova-gingerbread-tastiera-in-tutto-il suo-sensualità / (vedi verso il basso).

Ho appena letto sul nuovo StrictMode a http://android-developers.blogspot.com/2010/12/new-gingerbread-api-strictmode.html e su tutti i miglioramenti delle prestazioni in Gbread, ma la mia esperienza suggerisce finora esattamente l'opposto.

Possiamo andare a fondo di questo? Mi ritrovo a temere fanalino di un'istanza di pan di zenzero, a questo punto.

È stato utile?

Soluzione

Tutte le risposte sopra hanno i loro meriti e devono essere considerati, ma tenere a mente implementazione di Google di una macchina virtuale per la simulazione di dispositivi non è esattamente buono come quelli di Microsoft e Apple non ci può essere molto si può fare, ma assicuratevi di ottimizzare la configurazione e ottenere una macchina migliore.

Con l'introduzione del Honeycomb del sistema Android sta usando più potenza grafica per fare il rendering dell'interfaccia utente. Questo quando viene eseguito su un simulatore non può utilizzare in modo nativo la potenza grafica del vostro hardware del PC, ma la maggior parte emulano l'hardware del telefono che si traduce sempre in lose di prestazioni. Più generici emulatori X86 si sono resi disponibili, come VMWare, ma questo può richiedere un certo tempo per essere a disposizione del SDK di Android. Fino a quando una porta X86 di Android Honeycomb è disponibile che può approfittare della vostra GPU nativa l'emulatore sarà lenta.

L'unica vera soluzione è quella di acquistare un dispositivo a nido d'ape per il lavoro di sviluppo.

Altri suggerimenti

Quando si crea il nuovo GingerBread (livello di API 9) AVD, dargli un ammontare realistico di RAM.

Ad esempio il Nexus S ha 512

A tale scopo, nella sezione "Creare nuova Virtual Device Android (AVD)" finestra di dialogo.

Premere "Nuovo ..." per aggiungere un nuovo parametro hardware e scegliere "la dimensione della RAM del dispositivo", fare clic su OK.

Modifica la quantità predefinita 96-512.

ho visto una discussione di questo altrove che hanno suggerito che i parametri emulatore non erano ben messa a punto. Se si dà l'emulatore più memoria diventa a quanto pare molto più usabile.

Ora che è possibile modificare facilmente AVDS, ho provato a giocare con alcune delle impostazioni per il mio Gingerbread AVD, ed è, infine, abbastanza usabile.

  • Scheda SD: 500MiB
  • Pelle: WVGA800
  • Sottratto densità a cristalli liquidi: 240
  • Cache dimensione della partizione: 128 MB
  • Max VM dimensione heap: 48
  • dimensione ram dispositivo: 512

La mia ipotesi è che la RAM e la massima VM mucchio sono i più importanti, ma ho pensato che sarebbe stato meglio per includere tutte le impostazioni, in modo da poter provare questi come punto di partenza e quindi modificare.

I miei suggerimenti:

Solo allegare una scheda SD se ne avete bisogno e molto probabilmente non allocare più allora avete bisogno. Questo deve essere emulato in qualche modo.

Tutte le altre proprietà non dovrebbe essere gonfiato oltre il vostro dispositivo di destinazione. Se si aumenta la dimensione VM heap e si superano i valori di dispositivi reali avranno incidenti che non si accorse nemmeno durante lo sviluppo.

Bisogna ammettere le impostazioni predefinite non sono Enoughs per certe applicazioni e Ram dispositivo dovrebbe essere almeno 258 ai limiti del proprio dispositivo Android destinazione. Ricordate anche che se la vostra macchina host di sviluppo è basso sulla memoria, allora la memoria allocata per il vostro emulatore dovrà essere scambiati e fornendo una quantità minore eviterà inutili visite alla pagina.

Dopo aver modificato la risoluzione dello schermo, il dispositivo di RAM, lasciando che il dispositivo di "warm up" e in esecuzione sul nuovo hardware fresca ho registrato la velocità emulatore a nido d'ape.

Risultato a: http://www.youtube.com/watch?v=-7OR8vPsIak

lo trovo non molto diverso quindi Gingerbread su hardware più vecchio. Mi auguro che la GL host-accelerato trova la sua strada per l'SDK presto. Per ora lo sviluppo pianura potrebbe essere possibile, ma la creazione o provare le canzoni UX è impossibile.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top