Не удалось выделить память: 8
С сегодняшнего дня, когда я пытался запустить приложение в NetBeans на платформе Android 2.3.3, он показывает мне, что:
Не удалось выделить память: 8
Это приложение попросило Runtime прекратить его необычным способом. Для получения дополнительной информации обратитесь в службу поддержки.
и эмулятор не хочет запускаться.
Это первый раз, когда я вижу это, и у google нет никаких ссылок для этого, я даже пытался с двумя версиями NetBeans 6.9.1 и 7.0.1, все еще той же ошибкой.
Ответы
Ответ 1
Я понял это. Проблема заключалась в количестве бара, который я указал для виртуальной машины, и он был 1024 МБ, теперь у меня 512 МБ, и все в порядке, теперь мне нужно найти, как улучшить это количество бара, 512 не так много, и машина немного лагги.
Ответ 2
Ссылаясь на Android: не удалось выделить память и ее первый комментарий в соответствии с принятым ответом, меняя "1024" на "1024 МБ". Патетический, но работает.
Ответ 3
В моем случае:
- Используя встроенный WXGA720 для имитации устройства 720p, всегда получал эту ошибку.
- Вручную установить разрешение AVD до 720 x 1280, работает для меня
надеюсь, что это поможет ~
Ответ 4
Работает с 512 Мб вместо. Ни один из вышеперечисленных методов не работает для меня.
Ответ 5
Все остальное, что вы читаете здесь и в другом месте, является чистой гипотезой. Единственный верный способ исправить эту проблему - голосовать за эту ошибку отчет.
Проблема не связана с разрешением эмулятора или OpenGL, а также с объемом памяти вашего компьютера. У меня в памяти 24 ГБ, и большую часть времени я запускаю с hw.ramSize=1024
. Я получаю сообщение об ошибке 8. В других случаях он отлично работает без каких-либо изменений конфигурации. Надеюсь, вы поймали это: я вообще не изменял конфигурацию эмулятора, но иногда он запускается, а иногда он терпит неудачу.
Существует высокая вероятность того, что он имеет какое-то отношение к фрагментации памяти. Я рекомендую уменьшить значение hw.ramSize
как временное обходное решение.
Ответ 6
Похоже, для этого существует тысяча различных исправлений... ни одно из вышеперечисленных не работало для меня, но работала была для запуска AVD из командной строки emulator-arm.exe @AVD-NAME
Как-то, если запущено только с emulator.exe, я получаю такое же сообщение об ошибке, чем при попытке запуска через Eclipse.
Ответ 7
Я понял, что решение этой проблемы связано с распределением памяти Eclipse при запуске приложения в обычном режиме. Я просто проверил поле "Запуск от имени администратора" в свойствах ярлыков для Eclipse, и теперь он позволяет мне выделять больше памяти для AVD.
Надеюсь, что это поможет.
Ответ 8
Я преодолел эту проблему, изменив размер экрана устройства.
Я обнаружил, что если вы задаете 1024 МБ памяти, то вам нужно указать размер экрана устройства только в hdpi, и если он равен 512 МБ, то он должен быть mdpi или другими.
Итак, мы можем четко сказать, что размер бара должен указываться в соответствии с размером экрана. Если вы задаете размер 1024-бит при сохранении размера экрана устройства в mdpi, тогда это приведет к вышеупомянутой ошибке. I.e "Не удалось выделить память: 8 Это приложение запросило Runtime, чтобы он завершил его необычным способом.
Для получения дополнительной информации обратитесь в службу поддержки. "
или
сделайте свои настройки в менеджере AVD следующим образом:
[2013-01-11 14:44:01 - Менеджер SDK] hw.sensors.orientation = yes
[2013-01-11 14:44:01 - Менеджер SDK] hw.camera.front = none
[2013-01-11 14:44:01 - Менеджер SDK] hw.gps = yes
[2013-01-11 14:44:01 - Менеджер SDK] skin.dynamic = no
[2013-01-11 14:44:01 - Менеджер SDK] hw.keyboard = no
[2013-01-11 14:44:01 - Менеджер SDK] vm.heapSize = 32
[2013-01-11 14:44:01 - Менеджер SDK] hw.ramSize = 343
Ответ 9
Я просмотрел все другие решения, упомянутые в этой теме, и не нашел ничего, что работало, поэтому я немного побрелся. По какой-то причине версия Google API не срабатывала. Я поменял его на ваниль и больше не выходил из строя.
У меня должна быть другая проблема, но, возможно, это поможет кому-то...
Ответ 10
Посмотрите официальную вопрос 33930. Отмечается, что это может быть связано с запуском OpenGL во время запуска эмулятора. Другие писали, что это только сбой, когда они используют WXGA800-скин и предлагают вручную установить разрешение 800x1280.
Кроме того, есть ZIP файлы, позволяющие вручную понизить ваш SDK для Android до версии 19 и инструменты plattform до версии 11. Это может помочь также временно устранить проблему.
Ответ 11
У меня есть 16 ГБ и 4,4 ГГц процессора в моей машине. Виртуальная машина не позволит мне запустить ее на 1024. Я ударил его до 878 МБ, потому что он потерпел неудачу на 880 с тем же сообщением. Кажется, это самый барабан, который я могу выделить для эмулятора. Он все еще медленный, но я предполагаю, что он лучше 512 МБ.
Ответ 12
Я меняю настройки DPI моего монитора из параметров запуска AVD и синхронизировал его с исходной и текущей настройкой моего монитора, и он работал.
Ответ 13
Я решил установить размер хранилища в 2 раза по размеру ОЗУ и поместив размер хранилища SD таким же, как размер оперативной памяти.
Ответ 14
У меня была такая же проблема, но до того, как я получил вопрос, он попросил меня захватить источник видео.
Я отключил поддержку камеры, и я смог использовать 1024MB of RAM
.
Использование Windows 64bit, Xoom (Android 3.0)
.
Ответ 15
В моем случае для меня работает разрешение экрана смены WVGA720 на WSVGA.
Ответ 16
Проблема заключается в фрагментации памяти. ОС должна выделять все данные, указанные вами для vm (скажем, 1 Гб), как один непрерывный блок. Иногда такого блока нет. Чтобы исправить это, запустите запущенные программы, затем запустите avd и запустите свою виртуальную машину.
Ответ 17
Я заметил, что это связано только с одним avd, и все остальные из них я отлично работал. Я удалил его и создал новый, и теперь он работает.
Ответ 18
Что работало для меня в Windows:
1) Закрытие Eclipse
2) Запуск Avd UI
3) Закрытие всех запущенных процессов, особенно тяжелых, таких как Chrome, explorer.exe и т.д.
4) Запустите эмулятор
5) Победить
Ответ 19
Убедитесь, что IntelHAXM установлен правильно. Этого недостаточно для загрузки и "установки" его через диспетчер SDK. Вам необходимо вручную установить его из:
android-sdk\extras\intel\Hardware_Accelerated_Execution_Manager
Кроме того, убедитесь, что Intel Virtual Technology включена в вашем BIOS.
Следуйте руководству developer.android.com или Инструкции по установке Intel.
Ответ 20
Вам нужно всего лишь отредактировать ваш барабан виртуального устройства, сделав его ниже! Попробуйте 20 МБ, и он будет работать!