web-dev-qa-db-fra.com

Échec d'allocation de mémoire: 8

À partir d’aujourd’hui, lorsque j’ai essayé d’exécuter une application dans NetBeans sur une plate-forme 2.3.3 Android, il m’a montré que:

Échec d'allocation de mémoire: 8

Cette application a demandé au Runtime de le terminer de manière inhabituelle. Veuillez contacter l'équipe de support de l'application pour plus d'informations.

et l'émulateur ne veut pas commencer.

C’est la première fois que je le vois, et google n’ayant pas de réponses à cela, j’ai essayé même avec 2 versions de NetBeans 6.9.1 et 7.0.1, toujours la même erreur.

368
Denees

Je l'ai compris. Le problème était dans la quantité de RAM que j'avais spécifiée pour la machine virtuelle, et c'était 1024 Mo, maintenant j'ai 512 Mo et c'est ok, maintenant je dois trouver comment améliorer cette quantité de RAM, 512 n'est pas tellement, et la machine est un peu lente.

373
Denees

Se référant à Android: échec de l'allocation de mémoire et son premier commentaire sous la réponse acceptée, remplacer "1024" par "1024Mo" m'a aidé. Pathétique, mais fonctionne.

61
Fenix Voltres

Dans mon cas:

  • L'utilisation de WXGA720 intégré pour simuler un périphérique 720p a toujours cette erreur
  • Définition manuelle de la résolution AVD à 720 x 1280, fonctionne pour moi

espérons que cela aide ~

43
RRTW

Fonctionne avec 512 Mo à la place. Aucune des méthodes ci-dessus ne fonctionne pour moi.

30
slash33

Tout ce que vous lisez ici et ailleurs n'est que pure conjecture. Le seul moyen sûr de résoudre ce problème est de voter pour ceci rapport de bogue =.

Le problème n'est pas lié à la résolution de l'émulateur ou à OpenGL, ni à la quantité de mémoire dont dispose votre ordinateur. J'ai 24 Go de mémoire sur mon ordinateur et la plupart du temps, je lance avec hw.ramSize=1024 et j'obtiens l'erreur 8. D'autres fois, cela fonctionne parfaitement sans modification de la configuration. J'espère que vous avez compris cela: je n'ai pas du tout modifié la configuration de l'émulateur et, parfois, il fonctionne et parfois il échoue.

Il y a une forte probabilité que cela ait à voir avec la fragmentation de la mémoire. Je recommande de réduire la valeur de hw.ramSize comme solution temporaire.

30
Gili

On dirait qu'il existe mille solutions différentes pour cela ... aucune des solutions ci-dessus n'a fonctionné pour moi, mais ce qui a bien fonctionné a été de lancer l'AVD à partir de la ligne de commande emulator-arm.exe @ AVD-NAME

D'une manière ou d'une autre, si j'étais lancé avec seulement emulator.exe, j'obtiendrais le même message d'erreur que lors d'une tentative de lancement via Eclipse.

17
Vincent Demers

J'ai réalisé que la solution à ce problème provenait de l'allocation de mémoire Eclipse lorsque vous exécutez l'application en mode normal. Je viens de cocher la case "Exécuter en tant qu'administrateur" sous les propriétés du raccourci pour Eclipse et cela me permet maintenant d'allouer plus de mémoire pour le disque AVD.

J'espère que ça t'as aidé.

14
Mahan H

J'ai surmonté ce problème en modifiant la taille de l'écran du périphérique.

J'ai constaté que si vous spécifiez 1024 Mo de RAM, vous devez spécifier la taille de l'écran du périphérique en hdpi uniquement. S'il s'agit de 512 Mo de RAM, il devrait s'agir de mdpi ou autres.

Donc, nous pouvons clairement dire que la taille du bélier doit être spécifiée en fonction de la taille de l'écran. Si vous spécifiez la taille de la RAM 1024 tout en conservant la taille de l'écran du périphérique en mdpi, l'erreur susmentionnée est générée, à savoir: "Échec d'allocation de la mémoire: 8 Cette application a demandé au Runtime de la terminer de manière inhabituelle.

Veuillez contacter l'équipe de support de l'application pour plus d'informations. "

ou

faites vos options dans AVD Manager comme suit:

[2013-01-11 14:44:01 - Gestionnaire de SDK] hw.sensors.orientation = yes

[2013-01-11 14:44:01 - Gestionnaire de SDK] hw.camera.front = none

[2013-01-11 14:44:01 - Gestionnaire de SDK] hw.gps = yes

[2013-01-11 14:44:01 - Gestionnaire de SDK] skin.dynamic = no

[2013-01-11 14:44:01 - Gestionnaire de SDK] hw.keyboard = no

[2013-01-11 14:44:01 - Gestionnaire de SDK] vm.heapSize = 32

[2013-01-11 14:44:01 - Gestionnaire de SDK] hw.ramSize = 343

13
Vsw10

J'ai passé en revue toutes les autres solutions mentionnées sur ce fil et je n'ai rien trouvé qui fonctionne, alors j'ai dîné un peu. La version Google de l'API échouait sur moi pour une raison quelconque. Je l'ai changé à la vanille et plus d'accidents.

Je dois avoir un autre problème, mais peut-être que cela aidera quelqu'un ...

6
Helico

Regardez le fonctionnaire numéro 339 . Il est souligné que cela peut avoir à voir avec le démarrage d’OpenGL lors du démarrage de l’émulateur. D'autres l'ont écrit ne se plantent que lorsqu'ils utilisent WXGA800-skin et suggèrent de régler manuellement la résolution sur 800x1280.

De plus, il existe des fichiers Zip fournis pour rétrograder manuellement votre Android SDK vers la version 19 et plattform-tools vers la version 11. Cela peut également aider à résoudre temporairement le problème.

6
Max

J'ai 16 Go et un processeur quad core de 3,4 Ghz dans ma machine. La machine virtuelle ne me laissera pas l'exécuter à 10h24 non plus. Je l'ai fait passer à 878 Mo parce qu'il a échoué à 880 avec le même message. Cela semble être le bélier le plus important que je puisse allouer à l'émulateur. Il est encore lent mais je suppose qu’il vaut mieux que 512Mo.

5
sondlerd

Je modifie les paramètres DPI de mon moniteur à partir des options de lancement d’AVD et le synchronise avec les paramètres d’origine et actuels de mon moniteur, et cela fonctionne.

4
Droid GEEK

J'ai résolu en mettant comme taille de stockage 2 fois la taille RAM, et en mettant la taille de stockage SD identique à la taille RAM.

4
Fire-Dragon-DoL

Le problème est dans la fragmentation de la mémoire. Le système d’exploitation doit allouer tout le bélier que vous avez spécifié pour vm (par exemple 1 Go) sous la forme d’un bloc continu. Parfois, il n'y a pas un tel bloc. Pour résoudre ce problème, fermez les programmes en cours d'exécution, puis exécutez avd et démarrez votre machine virtuelle.

3
Dave

Dans mon cas, le changement de résolution d'écran de WVGA 720 à WSVGA fonctionne pour moi.

3
Mabicho

J'avais le même problème, mais avant d'avoir le problème, il m'a demandé de capturer une source vidéo.

J'ai désactivé le support de l'appareil photo et j'ai pu utiliser 1024MB of RAM.

Utilisation de Windows 64bit, Xoom (Android 3.0).

3
Barry Carter

Il vous suffit d'éditer la RAM de votre périphérique virtuel, en l'abaissant! Essayez 20 Mo, et ça marchera!

2
user2062658

Ce qui a fonctionné pour moi sur Windows était:

1) Fermeture d’Eclipse 2) Exécution d’Avd UI 3) Fermeture de tous les processus en cours d’exécution, en particulier de ceux dont la mémoire est lourde, tels que Chrome, Explorer.exe, etc. 4) Démarrez l’émulateur 5) Win

2
Oren Bengigi

Assurez-vous que IntelHAXM est correctement installé. Il ne suffit pas de télécharger et de "l'installer" via le gestionnaire de SDK. Vous devez l'installer manuellement à partir de:

Android-sdk\extras\intel\Hardware_Accelerated_Execution_Manager

Assurez-vous également qu'Intel Virtual Technology est activée dans votre BIOS.

Suivez le guide sur developer.Android.com ou instructions d'installation d'Intel .

2
pegel

J'ai remarqué qu'il était lié à un seul avd de tous les autres où j'ai bien travaillé. Je l'ai supprimé et créé un nouveau et maintenant cela fonctionne.

1
Jason Crosby