Beim Erstellen eines neuen virtuellen Android 4.4-Geräts mit dem AVD Manager kann der interne Speicher nicht größer als 200 MB sein.
512 MB ist die interne Speichergröße, die ich einstellen möchte.
Ich habe es versucht:
Dies geschieht sowohl auf ARM - als auch auf Intel Atom x86-CPUs.
Wenn ich nun auf Android 3.0 (ARM) umsteige, kann ich die Größe des AVD-Managers einfach nach meinem Herzen ändern. Gibt es ein Problem mit Android 4.4? Gibt es etwas, was ich vermisst habe? Oder eine mögliche Umgehung?
Jetzt, da das Emulator-Dateisystem ext4 ist, konnte ich die Größe von userdata.img
mithilfe von Linux-Standardwerkzeugen ändern.
# Navigate to AVD
cd ~/.Android/avd/Nexus5
# Delete old image
rm userdata-qemu.*
# Re-size the image
resize2fs userdata.img 512M
# Start the emulator and enjoy
emulator @Nexus5
Edit Ich konnte auch userdata-qemu.img
direkt neu skalieren, musste aber zuerst e2fsck
ausführen.
e2fsck -f userdata-qemu.img
resize2fs userdata-qemu.img 512M
Sogar der obige Vorschlag kann dazu führen, dass der Android-Emulator beim Boot-Logo hängen bleibt. Der Grund ist, dass resize2fs die Änderungen vornimmt, die im Allgemeinen richtig sind, aber von Android als fehlerhaftes fs betrachtet werden und verhindern, dass es im rw-Modus bereitgestellt wird, wodurch der Startvorgang unterbrochen wird.
Examening Boot Logs zeigt so etwas:
EXT4-fs error (device mtdblock1): ext4_mb_generate_buddy:741: group 2, 32366 clusters in bitmap, 32370 in Gd
Event e2fsck behebt das Problem nicht für Android. Zur Problemumgehung verwende ich tune2fs, um die Art und Weise zu ändern, wie Android beschädigte FS weiterhin mounten soll.
tune2fs -e continue userdata-qemu.img
Jemand13, das ist definitiv ein Fehler in Target: "Android 4.4.2 - API Level 19"
Ich habe das gleiche Problem - die Größe des internen Speichers des Geräts im Emulator des Android SDK kann auf keinen Fall geändert werden (auch mit "disk.dataPartition.size = xxxM" in der config.ini oder mit den Befehlszeilenargumenten Partitionsgröße xxx ”) bei Verwendung von Android 4.4.2 im Emulator von Android SDK.
Sie können die benutzerdefinierte Größe nur festlegen, wenn Sie als Ziel verwenden: Android 3.0 - API Level 11.
Meine Hardware: Windows 7 Ultimate SP1, RAM 4 GB; Core Duo 2,28 GHz; GT630
Wenn Sie dieses Problem auch 2016 noch nicht haben, löschen Sie das Bild aus dem AVD Manager und fügen Sie den Emulator wieder hinzu.
Es schien, als könnte ich den Emulator nicht ändern, egal was ich mache, aber es funktionierte, als ich das Image löschte und dann das Image mit 1 GB internem Speicher neu erstellte.
Ich konnte dieses virtuelle Gerät erstellen, vielleicht Ihren Gerätetyp ändern oder etwas?
Um auf @ Frohnzies Antwort aufzubauen, sind resize2fs und e2fsck jetzt in den SDK-Tools enthalten (Sie müssen möglicherweise Ihre SDK-Tools aktualisieren, um sie anzeigen zu können). Sie befinden sich unter yourAndroidSDKFolder/tools/bin (Windows, Linux) oder yourAndroidSDKFolder/tools/bin64 (Mac, Linux).
Hier scheint es einen Haken zu geben, bei älteren Android-Tools, die niedriger als Version 22 sind, funktioniert dies nicht. Ich habe die Android-Tools auf 23 aufgerüstet und das hat funktioniert.
Meine Konfiguration war API Level 21 CPU: Intel X86 Betriebssystem: Ubuntu Linux
Für mich war es ein Problem, als ich aus Versehen den AOSP 4.4.2-Emulator in Android Studio ausgewählt habe. Der Google Inc. x86-Emulator (unten) scheint diesen Fehler nicht zu haben.
Assaf G. Antwort ist gut. Ich habe jedoch in den folgenden Links festgestellt, dass der erste Benutzer Emulator
mit interner Speicher500MB
erstellen kann. Aber er bekommt etwas exceptions
, das aber nicht mit interner Speicher..__ zusammenhängt. In dem anderen Link-Benutzer kann emulator
mit interner Speicher4096MB
erstellt werden. Aber er hat Geschwindigkeitsprobleme. Ich denke, Sie müssen es mit Spezifikationen versuchen, die im ersten Link bereitgestellt werden.
wenn Sie /data/data/com.google.Android.gms/files löschen, werden 200M + freigegeben