Lo ottengo a volte (non spesso) per uno dei miei progetti, solo un paio di lezioni
Installation error: INSTALL_FAILED_INSUFFICIENT_STORAGE
Come posso aumentare la memoria dell'emulatore?
Lo ottengo a volte (non spesso) per uno dei miei progetti, solo un paio di lezioni
Installation error: INSTALL_FAILED_INSUFFICIENT_STORAGE
Come posso aumentare la memoria dell'emulatore?
Risposte:
Questa risposta è, mentre scrivo, quasi otto anni e circa cinque anni stantii. Ma è ancora (mentre scrivo questo) la risposta "accettata", perché ha risposto alla domanda quando è stata posta.
La risposta più recente, che si applica ai più recenti strumenti di Android Studio, è disponibile qui: https://stackoverflow.com/a/35828035/62 : è un'ottima risposta con le schermate. Se stai utilizzando Android Studio, ignora la risposta Eclipse di seguito.
Stavo cercando la risposta a questa domanda e non ero soddisfatto delle risposte di cui sopra. Ma poi ho trovato la risposta , quindi eccola per riferimento futuro:
Per riassumere (e chiarire), in Eclipse, vai a "Configurazioni di debug". Puoi trovarlo nel menu a discesa sotto l'icona "debug". Seleziona "target" e seleziona un target emulatore preferito da avviare. Quindi in "opzioni aggiuntive della riga di comando dell'emulatore", aggiungi questo:
-partizione-dimensione 1024
Quindi CHIUDI l'emulatore (e rimuovi tutti i dispositivi) e fai clic sull'icona di debug, che avvierà l'emulatore preferito che hai selezionato. Questo è importante: Eclipse deve avviare il debugger, non AVD.
Ciò ha risolto il problema per me.
Apri AVD Manager.
Fare clic su Modifica icona per modificare l'AVD.
Fai clic su Mostra impostazioni avanzate.
Modificare le dimensioni di memoria interna, RAM, scheda SD, se necessario. Fai clic su Fine.
Conferma il popup facendo clic su Sì.
Cancella i dati sull'AVD e conferma il popup facendo clic su Sì.
Importante: dopo aver aumentato le dimensioni, se non ti viene chiesto automaticamente di cancellare i dati, devi farlo manualmente aprendo il menu a discesa dell'AVD e scegliendo Cancella dati.
Ora avvia e usa il tuo emulatore con maggiore memoria.
Aggiungi quanto segue a avd config.ini
disk.dataPartition.size=1024MB
Fammi sapere se questo funziona anche per te.
Ho aggiunto alla riga
1024MB
quando si utilizza AVD Manager. Non puoi semplicemente entrare per 1024
un po 'per capirlo, e ho confermato che funziona
Esegui AVD Manager
Seleziona il tuo AVD e fai clic sul pulsante "Dettagli ...".
Nel mio caso AVD Manager imposta la dimensione del disco su
disk.dataPartition.size=4000M
Questo valore non valido , il disco è di circa 500 MB nonostante i numeri specificati.
Vai alla cartella di AVR per percorso in "Dettagli AVD".
Modificalo in config.ini in
disk.dataPartition.size=4000MB
e rimuovi tutti i file .img.
Stavo facendo un'installazione di un apk:
adb install /home/me/jones_android-arm.apk
E stavo ricevendo un messaggio di errore che lo diceva
/data/local/tmp/jones_android-arm.apk
era troppo grande. Utilizzando gli strumenti SDK da R15 e ADT 15 sono stato in grado di utilizzare il gestore AVD per manipolare alcune delle impostazioni del mio emulatore esistente:
Window-> AVD Manager -> (select you virtual machine) -> Edit
poi andando nella finestra delle proprietà dell'hardware proprio sotto "Skin:" sono stato in grado di selezionare con il pulsante Hardware: Nuovo "Dimensione ideale della partizione". Tuttavia, non sono stato in grado di impostare un valore diverso da "0". Imperterrito, sono andato alla mia directory $ {HOME} /. Android / avd C'era una directory 'MyVm.avd'. Andando in quella directory ho trovato un file 'config.ini'. C'era la voce:
disk.dataPartition.size=0
Ho impostato questo su:
disk.dataPartition.size=1024
.. quindi è tornato a AVD Manager, ha selezionato MyVm, ha selezionato 'Avvio', ha optato per cancellare i dati dell'utente e vincere la finestra di dialogo seguente, ed è stato in grado di eseguire e installare.
disk.dataPartition.size=1024MB
, dal momento 1024
che 1024m
non funzionava.
avd manager ha un'opzione "dimensione ideale della partizione di sistema", prova a impostarla su 1024 MB o usa l'opzione di avvio a riga di comando che fa lo stesso.
a proposito, ho riscontrato questo problema solo con l'immagine dell'emulatore 4.0.
questo problema si presenta con Android 1.5 .. prova 2.0 o 2.1 o 2.2
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.android.junkfoodian"
android:installLocation="preferExternal" // this line can work for Installation error: // // INSTALL_FAILED_INSUFFICIENT_STORAGE
Per ridimensionare la memoria dell'emulatore Android in Linux:
1) installa qemu
2) Individua la directory contenente i file img della macchina virtuale. Qualcosa come ~ / .android / avd / .avd e cd ad esso.
3) Ridimensiona le immagini ext4: esegui cioè per crescere da 500 Mb a 4 GB
qemu-img resize userdata.img +3.5GB
qemu-img resize userdata-qemu.img +3.5GB
4) far crescere il filesystem:
e2fsck -f userdata.img
resize2fs userdata.img
e2fsck -f userdata-qemu.img
resize2fs userdata-qemu.img
5) Per l'immagine della scheda SD, opzionale: salva i dati:
mkdir 1
mount -o loop sdcard.img 1
cp -a 1 2
umount 1
6) ridimensiona l'immagine da 100 Mb a Gb:
qemu-img resize sdcard.img +3.9GB
7) rigenerare il filesystem:
mkfs.vfat sdcard.img
8) opzionale: ripristina i vecchi dati:
mount -o loop sdcard.img 1
cp -a 2/* 1
mount -o loop sdcard.img 1
Sono un principiante, ma ho avuto questo problema giocando con "Hello Grid View". Stavo cercando di usare le mie foto, tutte di dimensioni molto grandi.
La soluzione rapida è stata quella di ridurre il numero di foto, riducendo così le dimensioni del file APK.
Ma, suppongo che la mia domanda di follow-up per chiunque abbia questo thread sia questa: come posso allegare file di grandi dimensioni come JPG e MP3 a un'app e assicurarmi che salvino sulla scheda SD in modo che l'APK rimanga piccolo?
è necessario aumentare la memoria virtuale dell'emulatore
Come aumentare la memoria virtuale dell'emulatore
emulatore -avd "Nome emulatore" -partizione-dimensione 2024
quindi prova a installare il tuo apk
Aggiorna le tue impostazioni in AVD Manager e avvia il dispositivo abilitando "Cancella dati utente". Questo ha funzionato per me.
Immagino che dovresti riavviare l'emulatore con "emulator -wipe-data -avd YourAvdName" o selezionare "Cancella dati utente" nella configurazione di esecuzione se stai usando Eclipse.
Sto affrontando lo stesso problema in questo momento.
L'unica volta che l'ho visto accadere è stato quando il filesystem host era praticamente esaurito. Hai molto spazio libero sul filesystem in cui è archiviato il filesystem della VM?
Sicuramente non è una risposta appropriata, ma è un piccolo suggerimento.
Se desideri utilizzare file statici nella tua app. Dovresti metterli come risorse o come risorse. Ma se U ha problemi di memoria come mantenere piccolo l'APK, è necessario modificare il design dell'app in modo tale che,
invece di metterli come risorse, durante l'esecuzione dell'app (dopo l'installazione) è possibile prendere i file (file decisamente diversi poiché l'utente potrebbe non conservare i file necessari) dalla scheda SD. Per questo U è possibile utilizzare ContentResolver per acquisire audio, file di immagine sulla selezione dell'utente.
Con questo puoi dare all'utente un'altra funzionalità come se fosse in grado di caricare file audio / immagini sull'app a sua scelta.
Il seguente approccio ha funzionato per me
Passa alla cartella Android SDK / tools nella finestra del terminale (nel caso in cui non sia stato aggiunto il percorso)
Assicurati che il dispositivo virtuale che stai pianificando di pulire sia spento.
Esegui il comando "./emulator -wipe-data -avd YourAvdName" dove YourAvdName è il nome del tuo dispositivo Android virtuale