Als ich heute versuchte, eine App in NetBeans auf einer 2.3.3-Android-Plattform auszuführen, wurde mir Folgendes angezeigt:
Speicherzuweisung fehlgeschlagen: 8
Diese Anwendung hat die Runtime aufgefordert, sie auf ungewöhnliche Weise zu beenden. Bitte wenden Sie sich an das Support-Team der Anwendung, um weitere Informationen zu erhalten.
und der Emulator will nicht starten.
Dies ist das erste Mal, wenn ich es sehe, und Google hat keine Antworten darauf, ich habe es sogar mit 2 Versionen von NetBeans 6.9.1 und 7.0.1 versucht, immer noch der gleiche Fehler.
Ich habe es herausgefunden. Das Problem lag in der RAM-Menge, die ich für die virtuelle Maschine angegeben hatte, und es waren 1024 MB, jetzt habe ich 512 MB und es ist in Ordnung, jetzt muss ich herausfinden, wie ich diese RAM-Menge verbessern kann, 512 ist nicht so viel, und Die Maschine ist ein bisschen träge.
In Bezug auf Android: Speicher konnte nicht zugewiesen werden, und der erste Kommentar unter akzeptierter Antwort, das Ändern von “1024” in “1024 MB” hat mir geholfen. Erbärmlich, aber funktioniert.
In meinem Fall:
- Bei Verwendung des eingebauten WXGA720 zur Simulation eines 720p-Geräts trat immer dieser Fehler auf
- Stellen Sie die AVD-Auflösung manuell ein bis 720 x 1280, funktioniert bei mir
hoffe es hilft~
Alles andere, was Sie hier und anderswo lesen, sind reine Vermutungen. Der einzige sichere Weg, dieses Problem zu beheben, ist dafür zu stimmen Fehlerbericht.
Das Problem hängt nicht mit der Auflösung des Emulators oder OpenGL zusammen, noch wie viel Arbeitsspeicher Ihr Computer hat. Ich habe 24 GB Speicher in meinem Computer und die meiste Zeit laufe ich damit hw.ramSize=1024
Ich erhalte Fehler 8. In anderen Fällen funktioniert es ohne Konfigurationsänderungen einwandfrei. Ich hoffe, Sie haben das verstanden: Ich habe die Emulatorkonfiguration überhaupt nicht geändert, und trotzdem läuft sie manchmal und manchmal schlägt sie fehl.
Es besteht eine hohe Wahrscheinlichkeit, dass es etwas mit Speicherfragmentierung zu tun hat. Ich empfehle, den Wert von zu reduzieren hw.ramSize
als vorübergehende Notlösung.
Funktioniert stattdessen mit 512 MB. Keine der oben genannten Methoden funktioniert bei mir.
Sieht so aus, als gäbe es tausend verschiedene Fixes dafür … keine der oben genannten Lösungen hat bei mir funktioniert, aber was funktioniert hat, war das Starten des AVD über die Befehlszeile emulator-arm.exe @AVD-NAME
Wenn ich nur mit emulator.exe gestartet würde, würde ich irgendwie die gleiche Fehlermeldung erhalten wie beim Versuch, über Eclipse zu starten.
Mir wurde klar, dass die Lösung für dieses Problem von der Eclipse-Speicherzuweisung herrührt, wenn Sie die Anwendung im normalen Modus ausführen. Ich habe gerade das Kontrollkästchen “Als Administrator ausführen” unter den Verknüpfungseigenschaften für Eclipse aktiviert und jetzt kann ich dem AVD mehr Speicher zuweisen.
Hoffentlich hilft das.
.
7593900cookie-checkSpeicherzuweisung fehlgeschlagen: 8yes
Ich bin nur neugierig, warum Sie NetBeans vs. Eclipse verwenden. Ich benutze NetBeans für andere Dinge (nämlich PHP), aber ich fand es gerade einfacher, Eclipse für Android-Sachen zu verwenden. Was sind Ihrer Meinung nach die Vorteile gegenüber Eclipse?
– SBerg413
28. August 11 um 19:12 Uhr
Ich habe Eclipse einfach noch nie zuvor benutzt, aber ich weiß nicht warum, ich hasse es, den Grund, es ist sogar kompliziert in GUI vs NetBeans, aber im Moment lade ich es herunter, um es zu versuchen, wenn das Problem verschwindet, werde ich es tun Nur Android-Sachen drin.
– Denees
28. August 11 um 19:32 Uhr
Wow, dieser Kommentar war ein Komma-Massaker. Stellen Sie auf jeden Fall sicher, dass Ihr AVD eine angemessene Menge an RAM verwendet (dh genug, um ausgeführt zu werden, aber nicht mehr, als Ihr Computer verarbeiten kann). Dies wird festgelegt, wenn Sie das virtuelle Gerät erstellen.
– Glendon Trullinger
28. August 11 um 19:52 Uhr
Nur als Referenz, ich habe einen Core i7 mit 16 GB RAM, maximal ausgelasteter RAM auf meinen AVDs und sie sind leider alle verzögert :/
– Jack
28. August 11 um 20:35 Uhr
Ich habe eine Windows 8 64-Bit-Maschine, die auf einem Intel Core i7-Prozessor läuft. Ich musste die RAM-Einstellungen für dieses AVD (Nexus 7) auf 512 MB heruntersetzen, damit es ausgeführt werden konnte.
– IgorGanapolsky
30. Dezember 13 um 20:36 Uhr