Emulator

Revision 13 as of 2013-11-01 10:13:03

Clear message

Get the pre-built emulator

  • Install android-emulator package in Saucy
  • Copy out emulator to read/write directory
  • Generate sdcard
  • Run the emulator

$ sudo apt-get install android-emulator
$ cp -r /usr/share/android/emulator/ ~/
$ cd ~/emulator/
$ ./build-emulator-sdcard.sh
$ ./run-emulator.sh

Use the emulator

After starting the emulator with the wrapper script following should be available

  • Adb

Emulator will appear in the output of $ adb devices, and will, once fully booted allow

$ adb shell

access into ubuntu.

  • Serial console

The terminal where the wrapper script is started from should eventually give one console into Android container

  • Telnet access

Once launched graphical window title will show a port number, e.g. 5554. Connect to that over telnet, to send hardware events to the emulator

Building from scratch

To build

$ sudo apt-get install phablet-tools git bzr
$ # install android build-dependencies
$ sudo apt-get build-dep android
$ # if we're on amd64, we need to pull in certain 32-bit packages explicitly
$ sudo apt-get install libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-dev:i386 zlib1g-dev:i386
$ # and then work around the fact that libgl1-mesa-dev isn't Multi-Arch: same yet
$ sudo ln -s /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1 /usr/lib/x86_64-linux-gnu/libGL.so
$ mkdir -p emulator/
$ phablet-dev-bootstrap emulator
$ cd emulator
$ . ./build/envsetup.sh
$ lunch cm_goldfish-eng
$ make -j12

To generate sdcard with the ubuntu rootfs

$ ./build/tools/build-emulator-sdcard.sh

Launch emulator with serial console:

$ emulator -verbose -show-kernel -qemu -nographic

Username & password are:

phablet
phablet

To update your existing working tree to pull in new changes from the server, run repo sync.

For more information about how to use the repo command to manage your android working tree, see this page.