Как я могу ускорить загрузку моего эмулятора?

10

Я только что установил Eclipse вместе с инструментами для разработки приложений для Android сегодня вечером; так что я новичок в них обоих. В любом случае, мой эмулятор загружается каждый раз по 5 и более минут и обычно выдает ошибки. И он всегда очень большой, примерно такой же высокий, как экран моего ноутбука, и примерно вдвое меньше. Любая помощь?

Джеймс Литевски
источник
1
Разве это не должно быть на SO как вопрос разработки?
newuser
2
Так как вопрос об эмуляторе лежит на заборе, склоняясь к теме.
Даниэль
@Daniel: Это, безусловно, вопрос для разработчиков, и он не принадлежит здесь, но на StackOverflow.com
Jonas
6
@Jonas Я говорю это только потому, что раньше я видел другие вопросы об эмуляторе с похожими аргументами: на вопрос можно ответить одинаково для разработчика и опытного пользователя. Никакая часть его вопроса не просит помощи с программированием или кодом Java. Теперь, основываясь на комментариях ОП к моему ответу, довольно очевидно, что он разработчик, но пользователь, не являющийся разработчиком, может задать этот же вопрос, чтобы протестировать Android перед покупкой устройства. Такой подход к вопросам эмулятора был решен до того, как я нашел этот сайт.
Даниил
На самом деле вы можете привести довольно веский аргумент, что это просто проблема программного и аппаратного обеспечения ПК, и она относится к SuperUser ...
GAThrawn

Ответы:

9

Если вы занимаетесь разработкой в ​​Eclipse, вам не нужно выключать эмулятор. Если кнопка отладки / запуска в Eclipse настроена правильно, то Eclipse закроет текущий экземпляр вашей программы внутри эмулятора, установит новую программу в эмулятор и запустит программу на запущенном в данный момент эмуляторе - и все это без перезагрузки эмулятор.

Да, загрузка эмулятора все еще занимает 5 минут, но это не так уж и плохо, поскольку вы загружаете эмулятор только один раз в день (а загрузка Eclipse в начале дня в любом случае занимает примерно столько же времени).

Ли Райан
источник
Спасибо, я даже не задумывался; но это имеет смысл.
Джеймс Литевский
Я еще один новичок в Android Dev и Eclipse ... когда вы говорите "Если кнопка отладки / запуска в Eclipse настроена правильно ...", что вы имеете в виду? Я подозреваю, что мой неправильно настроен, потому что он каждый раз перезагружает эмулятор. Спасибо
ЗА
Нашел ответ на мой следующий вопрос здесь: stackoverflow.com/questions/506777/… Оставив след для всех, кто может удивиться тому же.
для
8

Ли Райан замечает, что после запуска эмулятора вам не нужно закрывать его, когда вы закончите тестирование сборки. Оставьте его открытым, и при каждом запуске или отладке приложения оно будет автоматически перезагружаться и запускаться.

Если у вас возникли проблемы с размером эмулятора, вы можете изменить настройки и отобразить фактический размер устройства, которое вы пытаетесь эмулировать. Это можно сделать, открыв «Android SDK and AVD Manager», выберите AVD, которым вы хотите управлять, и нажмите «Пуск». Откроется диалоговое окно справа (на снимке экрана ниже). Проверьте «Масштаб отображения до реального размера», а затем вам нужно изменить Screen Sizeполе и поле «Монитор точек на дюйм». «Размер экрана» будет соответствовать размеру экрана для эмулируемого вами устройства, а «Точка на дюйм монитора» будет зависеть от точек на дюйм вашего монитора. Возможно, вам придется немного поиграть с этим, потому что мне потребовалось пара попыток, чтобы понять это правильно.

SDK и AVD Manager

Надеюсь это поможет

Даниил
источник
Итак, я думаю, все, что мне нужно сделать, это открыть его оттуда, а затем нажать, чтобы запустить программу, как только она загрузится?
Джеймс Литевски,
@James Это зависит от того, как у вас есть ваш проект «Run Configuration» / «Debug Configuration». Если они настроены на ручной режим, вам будет предложено выбрать работающее в данный момент устройство или эмулятор или запустить новое. Если он не ручной, вам нужно будет установить используемый эмулятор по умолчанию, чтобы он установил / запустил программу там.
Даниэль
Почему отрицательный голос?
Даниил
5

Я думаю, что для ускорения эмулятора делать нечего, он просто очень медленный.

Вам лучше использовать реальное устройство для тестов, если это возможно.

Николас Рауль
источник
Ну, настоящее устройство далеко не подходит моему бюджету прямо сейчас .. Вы хотя бы знаете, как уменьшить размер эму? Так это как обычный размер устройства?
Джеймс Литевски,
Запустите команду «android» (в sdk / tools). В диалоговом окне «Android SDK and AVD Manager» есть кнопка «Создать ...» для создания нового компьютера. Откроется диалоговое окно «Создать новое виртуальное устройство Android». В разделе «Скин» вы можете указать желаемое разрешение.
Николас Рауль
3

Если вы используете многоядерный компьютер, вы можете попытаться заставить эмулятор использовать больше ядер. Эмулятор Android по умолчанию использует одно ядро, а на некоторых процессорах оно может быть очень медленным. Однако это снижает стабильность эмулятора.

Для этого запустите эмулятор и нажмите, Ctrl+Shift+Escчтобы открыть диспетчер задач. Перейдите на Processesвкладку и щелкните правой кнопкой мыши emulator.exeпроцесс, выберите Set Affinityи выберите дополнительные ядра. Обратите внимание, что вы должны делать это каждый раз, когда запускаете эмулятор.

Я сделал это на своей старой машине разработчика (Q9650, Win2008, 8 ГБ оперативной памяти DDR2 800 МГц), и она немного улучшила скорость, но в среднем выходила из строя примерно раз в день.

Оник
источник
3

В дополнение к другим отличным ответам здесь, это своего рода очевидный ответ.

Во всяком случае, я решил добавить его в список здесь. Если вы увеличите спецификации оборудования на компьютере разработчика, на котором вы его запускаете (в частности, на ОЗУ или на скорости вращения шпинделя жесткого диска), вы увидите увеличение скорости, с которой эмулятор запускается и работает.

Мой компьютер для разработки имел 2 ГБ памяти DDR2667, и когда я перешел на 4 ГБ памяти DDR800, у меня было заметное увеличение скорости запуска и операций эмулятора.

Мат Надрофский
источник
Разработка коробки?
Джеймс Литевски,
Блок разработки = компьютер, купленный или построенный для использования специально для разработки программного обеспечения. Это не значит, что его нельзя использовать ни для чего другого, но его целью является разработка.
Даниэль
К сожалению. Да, я позволил фанатам проникнуть в это. Под редакцией!
Мат Надрофский,
3

В эмуляторе есть встроенная функция Snapshot. Снимок, в основном, сохраняет изображение эмулятора (в его текущем состоянии) при его закрытии. Тогда в следующий раз вы можете запустить его с того же места. Эмулятор запустится практически сразу, так как ему не нужно проходить процесс загрузки. Используя Snapshot, я последовательно могу запустить свой эмулятор менее чем за 5 секунд (вместо 60 - 90 секунд, чтобы запустить его без).

В основном, когда вы создаете AVD (создаете образ эмулятора) - есть раздел под названием «Снимок». Убедитесь, что это отмечено («включено»). Вы также можете вернуться и отредактировать AVD, чтобы включить это, если вы пропустили его в первый раз.

При следующем запуске эмулятора параметры «Снимок» будут включены. Выберите «Запустить из моментального снимка», если вы хотите начать с сохраненного изображения, и выберите «Сохранить в моментальный снимок», чтобы сохранить любое состояние эмулятора при его закрытии.

козявка
источник