Виртуал бокс для андроида

VirtualBox — как альтернатива эмулятору ARM в Android SDK. Установка, настройка, подключение к среде разработки Eclipse и интернету

Наверняка многие из вас имели дело с эмулятором, поставляемым в комплекте Android SDK от компании Google. И, вероятно, очень многих разочаровала крайне медленная работа данного эмулятора, начиная от загрузки и заканчивая медленной работой вашего приложения. Речь идет об эмуляторе системы Android с поддержкой команд ARM-процессоров. Но ведь есть же в SDK образы системы Android для x86 процессоров, скажут многие, и будут правы. Но дело тут в том, что для эмуляции OS Android с поддержкой виртуализации x86-процессоров необходимо приложение HAXM от Intel, которое отказывается устанавливаться на компьютеры с процессорами фирмы AMD. Есть ли выход из данной ситуации для владельцев систем на базе AMD?

Ответ есть! И он заключается в использовании VirtualBox — свободнораспространяемой системы эмуляции с поддержкой виртуализации от фирмы Oracle. И не верьте тем, кто говорит, что настроить интернет на виртуальной машине можно только со специальным образом Андроида с поддержкой Ethernet. Поддержка Ethernet’а есть везде, просто в меню настроек Андроида нет такого пункта.

Что же нам нужно для успешной отладки своих приложений в виртуальной машине VirtualBox и настройки интернета?

Для этого необходимо скачать и установить последнюю версию VirtualBox’а, а так же скачать нужные вам образы ОС Android вот отсюда: http://www.android-x86.org/download

Запускаем VirtualBox и создаем виртуальную машину с такими параметрами:

Выделяем 256 Мб оперативной памяти, 128 Мб для видеоадаптера и создаём виртуальный диск размером 1 Гб (можно большего и меньшего размера под ваши потребности) типа VHD.

В настройках виртуальной машины подключаем скачанный образ системы Android:

Запускаем нашу виртуальную машину и видим:

Выбираем установку ОС «Андроид» на наш виртуальный жесткий диск и жмем Enter.

Далее выбираем первый пункт меню «Create/Modify partitions» и опять жмём Enter.

Теперь нужно создать первичный раздел Linux.

Выбираем пункт New, затем Primary, видим что-то вроде «Size (in MB): 1069,29» и жмём Enter, далее опять нажимаем Ввод на пункте Bootable и затем выбираем пункт Write.

На вопрос записать ли таблицу разделов на жесткий диск, вводим слово «yes».

После жмём на пункт Quit и видим следующее меню:

Выбираем первый пункт меню и далее выбираем пункт меню ext3 и жмём Ввод, далее нас спросят «Do you want to install boot loader GRUB?» — выбираем Yes, нажимаем Ввод. Далее нас спросят, «хотим ли мы, чтобы директория /system была доступна для чтения/записи?» — также выбираем Yes и нажимаем клавишу Ввод.

Если вы сделали все правильно, то вы увидите вот такую картинку с процессом установки ОС «Андроид» на виртуальный диск:

Поздравляю! Вы только что установили ОС «Андроид» для систем на базе x86-процессоров на виртуальный диск вашей виртуальной машины.

Но радоваться пока еще рано.

Теперь вы должны увидеть следующее окно:

Выбирите в этом окне пункт меню Машина, затем пункт Закрыть. нажмите на чекбокс «Выключить» и нажмите кнопку Ok.

Читайте также:  Свой игровой движок android

После того, как вы выключили виртуальную машину, вы должны убрать из виртуального CD-привода образ с системой Андроид: Изъять диск из привода. Он нам больше не понадобится.

Далее в консоли либо в файл-менеджере типа Far создаем командный файл с расширением .bat, например s.bat, и прописываем в нём следующие команды:

Этим мы устанавливаем доступные для нашей виртуальной системы разрешения экрана, которые нам предпочтительно использовать. Жмём Ввод, и все изменения будут внесены в конфигурационные файлы виртуальной машины. Обратите внимание на имя вашей виртуальной машины, в моём примере это «Android 4.0 RC2».

После этого запускаем нашу виртуальную машину:

На первом пункте меню «Android-x86 4.0-RC2» нажимаем клавишу с латинской буквой «A», появится меню с конфигурационной строкой загрузки ОС в конце которой
будет написано «SRC=/android-4.0-RC2», после букв RC2 ставим пробел и пишем «vga=ask» и жмём Ввод. Потом еще раз Ввод. Появится вот такой экран:

Видим 4 созданные нами ранее видеорежима. Набираем на клавиатуре «361» и давим Ввод:

Далее настраиваете ваш Андроид как вам удобно. Не забывайте в меню виртуальной машины выбрать пункт «Машина» и пункт «Выключить интеграцию мыши». После этого вы можете кликнуть левой кнопкой мыши на окне с Андроидом и управлять им с помощью мышки. Выход из этого режима (по умолчанию) клавиша правый Ctrl.

Если Андроид впал в спячку и не реагирует на мышку, то пробудить его можно клавишей «контекстное меню» (нарисовано меню со стрелкой курсора), которая должна располагаться рядом с клавишей «Windows» (с изображением флага).

А теперь самое время подключить нашу среду разработки к виртуальной машине!

В меню окна нашей виртуальной машины жмем «Машина», «Настроить. », «Сеть», «Проброс портов», давим на иконку «+» и создаем новое правило для проброса портов:

IP адрес хоста 127.0.0.1, а IP гостя в моём случае 10.0.2.15. Узнать IP гостя можно следующим образом: в окне с Андроидом жмём комбинацию «Alt+F1» (выход из консоли «Alt+F7»). Попадаем в консоль, где вводим команду netcfg и давим Ввод:

Теперь после проделанных ранее манипуляций, пишем в консоли Windows «adb connect 127.0.0.1:5556» и вуаля!

А теперь самое вкусное!

Смотрим в настройках вашей сети DNS адреса провайдера,

Нажимаем в окне Андроида «Alt+F1» и вводим (в моем случае это DNS адрес 80.243.64.67):

(Вы должны ввести DNS адрес своего провайдера интернета).

Источник

Виртуал бокс для андроида

Устанавливаем Android на ваш компьютер/ноутбук через виртуальную машину Oracle VM VirtualBox или VMWare Workstation.
Самая последняя и стабильная версия на данный момент: Android 8.1 Oreo с патчем безопасности 5 января 2019 (сборка образа: 17 января 2019)
Android 9.0 в виртуальных машинах работает очень плохо и в большинстве случаев не запускается, если есть информация о том, как заставить его стабильно запускать, пишите в ЛС, добавлю в шапку.

1. Сама виртуальная машина Oracle VM VirtualBox 5.22 (версия 6.0 на данный момент плохо дружит с Android-x86, пока пользуемся стабильной 5.2)
2. Образ Android. Его скачиваем с сайта Android-x86.org
3. Включение функции виртуализации у вашего процессора в биосе вашего хоста (у разных материнских плат и процессоров этот параметр в меню называется по разному, нужно искать, пример на моей материнской плате на картинке)

0.1. Скачиваем и устанавливаем программу.
0.2. Скачиваем образ Android.

1.1. Создаём виртуальную машину с любым названием, тип системы: Linux, версия: Ubuntu (разрядность не важна).
1.2. Объем оперативной памяти зависит от вашего компьютера/ноутбука, лучше ставить половину от доступной (т.е. если у вас на хосте стоит 8 гб, то можно спокойно ставить 4 гб).
1.3. Создаём новый виртуальный диск, VDI, Динамический, объем лучше от 8 Гб (в зависимости от количества нужных вам приложений).
1.4. Заходим в св-ва созданной машины через кнопку Настроить.
Общие — Дополнительно — Включаем двунаправленный буфер.
Система — Материнская плата — Убираем галочку в Порядке загрузки с Дискета
Система — Материнская плата — Ставим галочку Включить I/O APIC
Система — Материнская плата — Манипулятор курсора — ставим PS/2 мышь
Система — Процессор — 2 ядра ЦПУ (или больше, если есть возможность)
Система — Процессор — Включить PAE/NX
Дисплей — Видео — Видео память 128 Мб
Дисплей — Видео — Ставим галочку Включить 3D-ускорение
Носители — Контроллер: IDE — Нажимаем на Пусто и справа где окошко привод нажимаем на диск и выбираем скачанный образ Android.
1.5. Нажимаем ОК.

2.1. Запускаем машину.
2.2. В первом окне стрелками на клавиатуре выбираем самую нижнюю Installation — Install Android-x86 to harddisk, подтверждаем выбор нажатием Enter. Если предлагает установить GPT, отказываемся!
2.3. После того, как пробегут все строки появится окно, в нём выбираете первый пункт Create/Modify partitions.
2.4. В появившимся окне стрелкой вправо выбираем Write и пишем yes, подтверждая нажатием Enter.
2.5. Стрелкой вправо выбираем New, потом Primary, подтверждаем появившийся объем.
2.6. Стрелкой вправо выбираем Write и пишем yes, подтверждая нажатием Enter.
2.7. Стрелкой вправо выбираем Bootable, нажимаем Enter и выходим через Quit.
2.8. Если всё сделали правильно, то появится первая записать sda1 Linux, подтверждаем Enter.
2.9. В следующем окне выбираем ext4. Потом подтверждаем, что хотим форматировать диск.
2.10. Ждём пока он отформатирует.
2.11. Во всех следующих окнах жмём Yes.
2.12. После того, как появится окно Android-x86 is installed successfully; наверху нажимаем кнопку Устройства — Приводы оптических дисков — Извлечь диск из привода. После этого выбираем Reboot и нажимаем Enter.
2.13. Машина перезагружается и выбираем самый первый пункт
2.14. После этого ждём, появляется лого Android, а дальше настройка системы, как будто у вас простой планшет на Android.

Теперь у вас есть уже рутированный Android с прошивкой для разработчиков.

Как изменить разрешение экрана?
Android 4.4 и ниже:
В папке с виртуальной машиной найдите файл, который называется название_машины.vbox, в него добавьте строку:

Она определяет разрешение и количество памяти для цвета.
Android 5.0 и выше:
Нативно изменить разрешение пока достаточно трудно, но есть костыль. Работает достаточно неплохо.

VirtualBox 6.0 не хочет запускать Android
Проблема известна, решение простое — установить VirtualBox 5.22

Как включить полную поддержку программ, написанных для ARM в Android-x86?
Настройки — Android-x86 options — Enable Native Bridge

Что работает и что не работает в последней версии (Android 8.1)?
Не работает: сенсорный экран, Google Play и всё из него вытекающее
Работает: камера, Wi-Fi, Bluetooth, мышка, клавиатура, установка .apk из любых источников, запускаются простые игры (возможно и сложные, но это пока не точно)

Сообщение отредактировал Smit7564 — 28.04.20, 22:47

Спасибо, все понятно расписал, +++++++ тебе!

Добавлено 31.01.2014, 18:38:

Правда можно вместо Virtual box можно использовать ЛЮБОЙ эмулятор. Я лично пробовал через MS virtual pc

Источник

VirtualBox — Запуск Android эмулятора в виртуальной среде для тестирования Android проекта

Введение

В данной статье я постараюсь описать пример инфраструктуры для автотестов Android приложений (mobile automation), а именно, среду для проведения тестранов UI автотестов на эмуляторе Android девайса в виртуальной среде.

Требования:

Для Android эмулятора нужна поддержка Intel Virtualization Technology или AMD Virtualization. Поэтому часто тестировщик сталкивается с необходимостью запуска тестранов только в нативной среде ПК с прямым доступом к центральному процессору.

В этом случае схема получается такая:

Трудности:

Невозможно легко пересоздать среду эмулятора.

Среда не создаётся перед проведением тестирования, и после проведения не удаляется, поэтому среда может влиять на тестируемое приложение.

Починка и настройка среды занимает много времени.

Предлагаемое решение в данной статье:

Создать VM с использованием возможностей nested virtualization VirtualBox (более подробное описание технологии в этой статье).

Пробросить поддержку Intel-VT или KVM внутрь созданной виртуальной машины.

Изнутри VM создать и запустить Android эмулятор девайса.

Провести тестран UI тестов приложения.

После проведения тестирования уничтожить VM.

В этом случае схема получится такая:

Предполагаемые преимущества:

VM можно автоматически создавать перед проведением тестирования, а после окончания уничтожать. В таком случае каждый новый тестран будет проведен в идеально чистых условиях.

Уменьшится время поддержки среды и управляющего ПО, так как не нужно каждый раз руками ничего устанавливать и чинить неисправности инвайронмента.

В настоящей статье будет использоваться оборудование:

процеcсор: Intel i5-1035G1

в BIOS включена поддержка виртуализации процессора

Шаг 1: Установка ПО на нативную OS

Отдельно обращу внимание на управление машиной. Будем использовать протокол VNC для создания удобного удаленного рабочего стола. Протокол универсальный, для Linux, Windows, Mac и т.д.

x11vnc сервер

Запуск с параметрами:

Установка VirtualBox

Вводим в командной строке:

Создание VM

Мы пойдем по самому простому пути и создадим VM из интерфейса VirtualBox с такими характеристиками. В дальнейшем создание VM будет code-first

Количество CPU — не больше половины имеющихся на Вашем процессоре (в идеале половина)

Оперативная память — будет достаточно 4Gb

Nested Virtualization можно также включить из командной строки:

Далее переходим в саму VM.

Шаг 2: Установка ПО на VM

В первый раз мы установим всё руками. В дальнейшем весь установочный сценарий будет помещен в Packer, что позволит нам создавать VM с нужными настройками каждый раз перед началом тестирования.

Устанавливаем последний образ Ubuntu с официального сайта.

Установка KVM

Установка Android command line tools

Проверяем, что sdkmanager работает и Android SDK доступен:

Устанавливаем Android tools

Устанавливаем Git и клонируем проект

В данном примере я использую пустой проект мобильного Android приложения. В нём уже есть дефолтный интеграционный тест. Нам этого будет вполне достаточно.

Шаг 3: Проведение тестирования проекта на созданном Android эмуляторе

ADB видит подключенный к нему эмулятор:

Ура! Тест пройден!

Негативный тест

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

Переустановка VirtualBox на родительской машине (чтобы избежать ошибочное сохранение конфигов)

VM мы создаём без проброса виртуализации и с одним CPU:

В созданной VM мы не устанавливаем:

Остальные шаги аналогичны шагу №2 с установкой ПО. Попробуем еще раз наш тестран. Обратите внимание, что ADB также видит эмулятор:

Ура! Тест не пройден! Никогда еще так не радовался проваленному тестрану:

Падает PackageManager, как и обычно при запуске из виртуальной среды без аппаратной поддержки процессора:

Заключение

Мы сделали первый этап построения инфраструктуры для проведения автотестов Android приложений. Следующим этапом должно стать упаковка описанного выше сценария в Packer (ссылка на официальный сайт) который умеет работать с образами VirtualBox. Затем весь сценарий мы попробуем запустить из CI Jenkins. Если учесть, что плагин для него уже порядком устарел, то будет очень интересно.

Все результаты опубликую, как пополнения к этой статье.

В идеале, у нас должна получится code-first инфраструктура для тестрана UI и интеграционных автотестов для Android приложений, которую можно поднять на любом современном офисном ПК, которая работает автономно, билдит тесты на родных Android эмуляторах и есть не просит.

Источник

Читайте также:  Калькулятор научный для андроида
Оцените статью