Ich bekomme das manchmal (nicht oft) für eines meiner Projekte, nur für ein paar Klassen
Installation error: INSTALL_FAILED_INSUFFICIENT_STORAGE
Wie erhöhe ich den Speicher des Emulators?
Ich bekomme das manchmal (nicht oft) für eines meiner Projekte, nur für ein paar Klassen
Installation error: INSTALL_FAILED_INSUFFICIENT_STORAGE
Wie erhöhe ich den Speicher des Emulators?
Antworten:
Diese Antwort ist, während ich dies schreibe, fast acht Jahre alt und ungefähr fünf Jahre alt. Aber es ist immer noch (während ich dies schreibe) die "akzeptierte" Antwort, weil sie die Frage beantwortete, als sie gestellt wurde.
Die neuere Antwort, die für die neueren Android Studio-Tools gilt, finden Sie hier: https://stackoverflow.com/a/35828035/62 - eine großartige Antwort mit Screenshots. Wenn Sie Android Studio verwenden, ignorieren Sie die unten stehende Eclipse-Antwort.
Ich suchte nach der Antwort auf diese Frage und war mit den obigen Antworten nicht zufrieden. Aber dann habe ich die Antwort gefunden , und hier ist sie als zukünftige Referenz:
Um zusammenzufassen (und zu verdeutlichen), gehen Sie in Eclipse zu "Debug Configurations". Sie finden dies in der Dropdown-Liste unter dem Symbol "Debuggen". Wählen Sie "Ziel" und ein bevorzugtes Emulatorziel zum Starten. Fügen Sie dann unter "Zusätzliche Emulator-Befehlszeilenoptionen" Folgendes hinzu:
-Partitionsgröße 1024
Schließen Sie dann den Emulator (und entfernen Sie alle Geräte) und klicken Sie auf das Debug-Symbol, um den von Ihnen ausgewählten bevorzugten Emulator zu starten. Dies ist wichtig: Eclipse muss den Debugger starten, nicht AVD.
Das hat das Problem für mich behoben.
Öffnen Sie den AVD Manager.
Klicken Sie auf Symbol bearbeiten, um die AVD zu bearbeiten.
Klicken Sie auf Erweiterte Einstellungen anzeigen.
Ändern Sie den internen Speicher, den RAM und die SD-Kartengröße nach Bedarf. Klicken Sie auf Fertig stellen.
Bestätigen Sie das Popup, indem Sie auf Ja klicken.
Löschen Sie die Daten auf der AVD und bestätigen Sie das Popup, indem Sie auf Ja klicken.
Wichtig: Wenn Sie nach dem Vergrößern nicht automatisch aufgefordert werden, Daten zu löschen, müssen Sie dies manuell tun, indem Sie das Pulldown-Menü des AVD öffnen und Daten löschen auswählen.
Starten Sie jetzt Ihren Emulator und verwenden Sie ihn mit erhöhtem Speicherplatz.
Fügen Sie der avd config.ini Folgendes hinzu
disk.dataPartition.size=1024MB
Lassen Sie mich wissen, ob dies auch für Sie funktioniert.
Ich fügte in der Zeile hinzu
1024MB
bei Verwendung des AVD-Managers eingeben . Sie können nicht einfach eintreten. Es 1024
hat eine Weile gedauert, um das herauszufinden, und ich habe bestätigt, dass dies funktioniert
Führen Sie AVD Manager aus
Wählen Sie Ihre AVD aus und klicken Sie auf "Details ...".
In meinem Fall legt AVD Manager die Festplattengröße auf fest
disk.dataPartition.size=4000M
Dieser ungültige Wert Festplatte beträgt trotz der angegebenen Nummern ca. 500 MB.
Gehen Sie unter "AVD-Details" über den Pfad zum AVR-Ordner.
Bearbeiten Sie es in config.ini auf
disk.dataPartition.size=4000MB
und entfernen Sie alle IMG-Dateien.
Ich habe eine apk installiert:
adb install /home/me/jones_android-arm.apk
Und ich bekam eine Fehlermeldung, die mir das mitteilte
/data/local/tmp/jones_android-arm.apk
war zu groß. Mit den SDK-Tools von r15 und ADT 15 konnte ich mit dem AVD-Manager einige Einstellungen meines vorhandenen Emulators bearbeiten:
Window-> AVD Manager -> (select you virtual machine) -> Edit
Gehen Sie dann zum Fenster mit den Hardwareeigenschaften direkt unter "Skin:". Ich konnte mit der Schaltfläche Hardware: Neu die Option "Ideale Partitionsgröße" auswählen. Ich konnte den Wert jedoch nicht auf '0' setzen. Unerschrocken ging ich zu meinem Verzeichnis $ {HOME} /. Android / avd. Es gab ein Verzeichnis 'MyVm.avd'. Als ich in dieses Verzeichnis ging, fand ich eine 'config.ini'-Datei. Da war der Eintrag:
disk.dataPartition.size=0
Ich setze dies auf:
disk.dataPartition.size=1024
.. kehrte dann zum AVD-Manager zurück, wählte MyVm aus, wählte 'Start', entschied sich für das Löschen von Benutzerdaten, gewann den folgenden Dialog und konnte ausgeführt und installiert werden.
disk.dataPartition.size=1024MB
, da 1024
und 1024m
nicht.
avd manager hat die Option "Ideale Größe der Systempartition". Versuchen Sie, diese auf 1024 MB einzustellen, oder verwenden Sie die Startoption für die Befehlszeile, die dasselbe tut.
Zu Ihrer Information, ich habe dieses Problem nur mit dem 4.0-Emulator-Image festgestellt.
Dieses Problem kommt mit Android 1.5 .. versuchen Sie 2.0 oder 2.1 oder 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
So ändern Sie die Größe des Speichers des Android-Emulators unter Linux:
1) installiere qemu
2) Suchen Sie das Verzeichnis mit den IMG-Dateien der virtuellen Maschine. So etwas wie ~ / .android / avd / .avd und cd dazu.
3) Ändern Sie die Größe der ext4-Images: dh für das Wachstum von 500 MB auf 4 GB ausführen
qemu-img resize userdata.img +3.5GB
qemu-img resize userdata-qemu.img +3.5GB
4) Erweitern Sie das Dateisystem:
e2fsck -f userdata.img
resize2fs userdata.img
e2fsck -f userdata-qemu.img
resize2fs userdata-qemu.img
5) Für das SD-Kartenbild optional: Daten retten:
mkdir 1
mount -o loop sdcard.img 1
cp -a 1 2
umount 1
6) Ändern Sie die Größe des Bildes von 100 MB auf GB:
qemu-img resize sdcard.img +3.9GB
7) Generieren Sie das Dateisystem neu:
mkfs.vfat sdcard.img
8) optional: alte Daten wiederherstellen:
mount -o loop sdcard.img 1
cp -a 2/* 1
mount -o loop sdcard.img 1
Ich bin ein Anfänger, aber ich hatte dieses Problem beim Herumspielen mit der "Hello Grid View". Ich habe versucht, meine eigenen Fotos zu verwenden, die alle sehr groß waren.
Die schnelle Lösung bestand darin, die Anzahl der Fotos und damit die Größe der APK-Datei zu verringern.
Aber ich denke, meine Folgefrage für alle anderen, die diesen Thread treffen, lautet: Wie hänge ich große Dateien wie JPGs und MP3s an eine App an und stelle sicher, dass sie auf der SD-Karte gespeichert werden, damit die APK klein bleibt?
Sie müssen den virtuellen Speicher des Emulators erhöhen
So erhöhen Sie den virtuellen Speicher des Emulators
Emulator -avd "Emulator Name" -Partitionsgröße 2024
danach versuche deine apk zu installieren
Aktualisieren Sie Ihre Einstellungen im AVD Manager und starten Sie das Gerät, indem Sie "Benutzerdaten löschen" aktivieren. Das hat bei mir funktioniert.
Ich denke, Sie sollten den Emulator mit "emulator -wipe-data -avd YourAvdName" neu starten oder "Wipe User Data" in der Ausführungskonfiguration aktivieren, wenn Sie Eclipse verwenden.
Ich stehe gerade vor dem gleichen Problem.
Das einzige Mal, dass ich dies gesehen habe, war, als das Host-Dateisystem im Grunde keinen Speicherplatz mehr hatte. Haben Sie viel freien Speicherplatz im Dateisystem, in dem das Dateisystem der VM gespeichert ist?
Es ist definitiv keine angemessene Antwort, aber es ist ein kleiner Hinweis.
Wenn Sie statische Dateien in Ihrer App verwenden möchten. Sie sollten sie als Ressourcen oder als Vermögenswerte einsetzen. Wenn Sie jedoch Speicherprobleme haben, die Ihre APK klein halten möchten, müssen Sie Ihr App-Design so ändern, dass:
Anstatt sie als Ressourcen zu verwenden, können Sie beim Ausführen Ihrer App (nach der Installation) die Dateien (andere Dateien, da der Benutzer möglicherweise nicht die gewünschten Dateien aufbewahrt) von der SD-Karte nehmen. Zu diesem Zweck kann U ContentResolver verwenden, um Audio- und Bilddateien bei Benutzerauswahl aufzunehmen.
Mit dieser Funktion können Sie dem Benutzer eine weitere Funktion geben, z. B. das Laden von Audio- / Bilddateien in die App nach eigener Wahl.
Der folgende Ansatz hat bei mir funktioniert
Navigieren Sie im Terminalfenster zu Ihrem Android SDK / tools-Ordner (falls Sie den Pfad dafür nicht hinzugefügt haben).
Stellen Sie sicher, dass das virtuelle Gerät, das Sie reinigen möchten, ausgeschaltet ist.
Führen Sie den Befehl "./emulator -wipe-data -avd YourAvdName" aus, wobei YourAvdName der Name Ihres virtuellen Android-Geräts ist