0,0
рейтинг
25 мая 2011 в 10:20

Разработка → Подробное руководство по установке Android-x86

Эмулятор который идет в комплекте с Android SDK, не очень шустрый.
Основная идея использовать VirtualBox + Android X86, для преодоления проблем с производительностью.

Что нам необходимо:
Среда разработки Eclipse + Android SDK тут,
а также VirtualBox.

Под катом много картинок, и процесс установки, а также некоторые полезные советы.

Создаем Виртуальную машину:
Имя: Android-2.2-Generic
Операционная система: Linux
Версия: Linux 2.6
Память: 512 MB
Жесткий диск: 3GB

В Настройках машины:

Свойства->Сеть
Адаптер 1 — NAT (в виртуальной машине будет виден как eth0, для интернета).
Адаптер 2 — Виртуальный адаптер хоста (в виртуальной машине будет виден как eth1, для управления ADB).

Загрузите образ по ссылке android-x86-2.2-generic.iso.

Подключите образ к виртуальной машине.
И так сверимся какие параметры машины.


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


Управление производится стрелками влево, вправо, вверх, вниз

По шагам как инсталлировать линукс:

В загрузчике выбрать пункт меню
1. Installation — Install Android-x86 to harddisk
Создаем разделы.
2. Create/Modify partitions
Выбрать [New] -> [Primary] -> Size (in MB) 3216 press [ok]
Выбрать [Bootable]
Выбрать [Write] подтвердить запись изменений yes
Выход [Quit]
Выбираем раздел для установки
3. Select partitions to install Android-X86
[sda1 Linux VBOX HARDDISK]
Выбор файловой системы
4. Please select a filesystem to format sda1
[ext3]
Подвердить форматирование Yes
Установка загрузчика GRUB
5. Do you want install boot loader GRUB?
Подвердить Yes
Вы хотите сделать /system для чтения и записи
6. Do you want to install /system directory as read-write?
Подтвердить Yes

В Этом образе идет много примеров Snake,NotePad из Eclipse будет не возможно будет установить свои, в самом низу статьи есть утилита для разрешения данной проблемы.
Процесс установки завершен
7. Android-x86 is installed successfully.
Создаем SD карту
[Create a fake SD Card]
size 2000 MB
отключить CD-ROM

Перегрузить систему
Reboot

Горячие клавиши:
  • esc, правая кнопка мыши Назад
  • кнопка меню между правым ctrl и alt, на некоторых ноутбуках отсутствует
  • alt+f1, alt+f7 переключение между консолями
  • alt+курсор влево , alt + курсор вправо
  • f6 Выбор режимов, авиа режим, выключение
    , перегрузка
  • клавиша win домой


Если у вас не работает курсор мыши.
Идем в Машина-> Выключить интеграцию мыши host + i ( клавиша host по умолчанию правый ctrl).

Разблокируем экран потянув стрелку вверх

Настройка Сети
По умолчанию эмулятор не может работать с двумя сетевыми адаптерами — не проблема.Нам нужен интернет + внутренний адрес для отладки.
Идем в запуск приложений


Выбираем приложение
Settings -> Configure Ethernet
Ставим eth0 dhcp выбираем save.

Перегружаем Эмулятор.
Когда машина загрузится переключаемся в текстовую консоль alt+f1

Магический порядок
root@android:/ #
# netcfg
# netcfg eth1 down
# netcfg eth1 dhcp
*action 'dhcp' failed (invalid argument)*
*без этой комманды не выделялся адрес вообще*
# netcfg eth1 up
# netcfg
Всё выглядит приблизительно так.

Запоминаем адрес eth1 он будет нужен для adb.

Шаги по настройки сети с консолью к сожалению надо делать каждый раз, когда эмулятор стартуете по новой.

Теперь на компьютере переходим в папку где стоит Android-SDK, в вашей системе может другая папка
C:\Program Files\Android\android-sdk\platform-tools\
Используем команду adb eth1 адрес, у меня был 192.168.56.101

Вывод будет подобный:
C:\Program Files\Android\android-sdk\platform-tools>adb connect 192.168.56.101
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
connected to 192.168.56.101:5555

Выполняем Eclipse.

Пример работающего приложения.



Как быть если хочу поставить NotePad,Snake и другие примеры
можно поставить данную утилиту SystemApp_Remover_4_19.ap.

Процесс установки будет выглядеть приблизительно так.
C:\Program Files\Android\android-sdk\platform-tools>adb install c:\temp\SystemApp_Remover_4.19.apk

Потом удаляете из списка системных приложений то с чем конфликтует Eclipse

p/s Переключение видео режимов.
В Меню загрузки нажимаем e
Появится другое меню
kernel /android-2.2/kernel /quiet root ....
Еще раз нажимаем e и добавляем в конце строки через пробел vga=ask
Чтобы загрузится нажимаем enter b, и потом выбираем нужный режим из списка.

p/p/s Это мой первый пост на Хабре, не судите строго.
Василий Евстигнеев @bazilxp
карма
28,0
рейтинг 0,0
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Реклама

Самое читаемое Разработка

Комментарии (31)

  • +2
    Память: 512 GB
    На скриншоте MB же, а в тексте GB. Исправьте.
    • +1
      Опечатка, исправил.
  • +1
    Кстати можно ещё добавить что правая кнопка мыши — тоже назад, а нажатие на колёсико — меню. А клавиша Win — домой.
    • +1
      C клавишами, на сайте у них список не полный, особенно долго соображал как чтобы мышка работала…
  • +3
    Уже было и собрало кучу плюсов: habrahabr.ru/blogs/android/119599/
    • 0
      Старался с постом, в след раз буду проверять…
    • +6
      тут лучше разжевано — как раз для таких, как я :)
    • 0
      Уже было habrahabr.ru/post/112671/
  • НЛО прилетело и опубликовало эту надпись здесь
    • 0
      что-то в Идее можно делать, однако не то же самое что в Eclipse — все-таки Eclipse плагин разрабатывается в Гугле.
      • +2
        Посмотрел IDEA можно, там просто указать в проекте
        *Choose target device manually * в cписке устройств будет сетевое…
        • 0
          хм, красавцы! ;)
  • 0
    Переключение клавиатуры как-то можно реализовать?
    • +1
      Да Можно,

      Settings-> Language& Keyboard settings выключить китайские методы ввода оставить только Android Keyboard
      Android Keyboard(keyboard settings) ->Input Languages оставить те языки что нужны

      Переключение раскладок происходит так нажимаем на пробел (удерживая) и мышкой влево вправо будет происходить переключение раскладок

      Settings-> Language& Keyboard settings -> Select Language тут можно поменять язык интерфейса системы
  • 0
    А можно подключиться через WiFi к eee pc?
    • 0
      adb over wifi
  • 0
    Так и не найду, можно ли развернуть экран из горизонтального в вертикальную позицию?
  • 0
    Аккаунты не работают?
    • 0
      Google Market поставить можно, но он работать не будет, нет в списке устройств android-x86 :)
      Процесс установки .apk, через adb install name.apk
  • 0
    Спасибо, работает. Правда настройку сети сделал проще — сам назначил ip'шники и в виртуалке, и на хосте виртуальному адаптеру из одной и той же подсети, типа 192.168.100.1 и 192.168.100.2, dhcp не понадобился. С wi-fi только еще не разобрался — в эмуляторе он шел через ethernet, тут пока не понял, но не работает то, что уже работало, ошибок в консоли никаких. =/
  • +1
    Добавьте еще информацию про настройку видеорежимов (чтоб можно было сделать портретную ориентацию):
    groups.google.com/group/android-x86/msg/5928c8c972ad38e9

    Она как раз достаточно неочевидна в отличие от самой установки.
    • 0
      обновил там через grub добавлять параметр к ядру.
      • +1
        Важный момент еще возможность задать произвольный видеорежим в настройках VirtualBox. Иначе в портретном режиме тестировать не получится ведь.
  • 0
    Интересно, есть смысл ставить больше памяти и процессоров в виртуалке?
  • 0
    А можно ее к убунте второй системой поставить (груб)?
    • 0
      можно создать по идее,

      создать раздел отдельный, туда скопировать эту систему.
      а дальше в grub.conf пару загрузочных строчек прописать…
  • 0
    А у кого-то есть готовый образ для WM Ware 6?
  • 0
    Как выставить, к примеру, 240x320 для экрана?
    • 0
      передать параметром к ядру vga=ask, в grub.
  • 0
    Спасибо огромнейшее за статью! Думала, что уже не смогу через WiFi подключиться, но под конец получилось и без каких-либо комманд и перезагрузки ;)
  • 0
    Не знаю насчёт адреса, но для включения eth1 использую ifconfig:
    netcfg eth1 down
    ifconfig eth1 192.168.56.2 netmask 255.255.255.0
    ping -c3 192.168.56.1
    

    Всегда работает. ping — это проверка связи, в данном случае ..56.1 адрес хоста. А вот netcfg eth1 dhcp я так и не дождался завершения (впрочем долго я не ждал — убивал через полминуты).

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