Android中提供了一个模拟器来模拟ARM核的移动设备。Android的模拟器是基于QEMU开发的,QEMU是一个有名的开源虚拟机项目(详见http://bellard.org/qemu/),它可以提供一个虚拟的ARM移动设备。Android模拟器被命名为goldfish,用来模拟包括下面一些功能的ARM SoC:

·  ARM926ej-S CPU <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

·  Thumb support

·  MMC

·  RTC

·  Keyboard

·  USB Gadget

·  Framebuffer

·  TTY driver

·  NAND FLASH

Android模拟器所对应的源代码主要在external/qemu目录下。如果你想将Android移植到其他设备上,熟悉它目前所针对的模拟器环境可以提供一些参考。

对于应用程序的开发者,模拟器提供了很多开发和测试时的便利。无论在Windows下还是Linux下,Android模拟器都可以顺利运行,并且Google提供了Eclipse插件,可将模拟器集成到EclipseIDE环境。当然,你也可以从命令行启动Android模拟器。

如果你使用SDK中的模拟器的话,将路径切换到/tools/目录,输入./emulator即可看到模拟器窗口。如果你下载了所有Android源代码并成功编译,则可以在out/host/linux-x86/bin目录找到emulator工具。

模拟器运行时需要几个关键的镜像文件,Android源代码并成功编译后,这些镜像文件在out/target/product/generic目录下,主要有以下几个:

·  ramdisk.img 启动系统的ramdisk镜像

·  system.img 初始化好的系统镜像

·  userdata.img 初始化好的用户数据分区镜像

Google的文档中(http://code.google.com/android/reference/emulator.html)列出了如下的模拟器按键和键盘按键的影射关系。

Emulated Device Key

Keyboard Key

Home

HOME

Menu (left softkey)

F2 or Page-up button

Star (right softkey)

Shift-F2 or Page Down

Back

ESC

Call/dial button

F3

Hangup/end call button

F4

Search

F5

Power button

F7

Audio volume up button

KEYPAD_PLUS, Ctrl-5

Audio volume down button

KEYPAD_MINUS, Ctrl-F6

Camera button

Ctrl-KEYPAD_5, Ctrl-F3

Switch to previous layout orientation (for example, portrait, landscape)

KEYPAD_7, F11

Switch to next layout orientation (for example, portrait, landscape)

KEYPAD_9, F12

Toggle cell networking on/off

F8

Toggle code profiling

F9 (only with -trace startup option)

Toggle fullscreen mode

Alt-Enter

Toggle trackball mode

F6

Enter trackball mode temporarily (while key is pressed)

Delete

DPad left/up/right/down

KEYPAD_4/8/6/2

DPad center click

KEYPAD_5

Onion alpha increase/decrease

KEYPAD_MULTIPLY(*) / KEYPAD_DIVIDE(/)

更多相关文章

  1. Ubuntu下查找.android/avd
  2. 编译android的linux内核
  3. Android内容提供者源码
  4. Android(安卓)如何开发 Bottom Navigation 风格
  5. Android(安卓)4.0.1 源码下载,编译和运行
  6. 打android的patch
  7. android 命令(adb shell)进入指定模拟器或设备
  8. Android自学笔记(Android(安卓)x86模拟器Intel Atom x86 System I
  9. android源代码下载

随机推荐

  1. MySQL隐式类型转换导致索引失效的解决
  2. 浅谈MySQL数据查询太多会OOM吗
  3. MySQL多表连接查询详解
  4. sqlmap注入图文详解
  5. mysql之group by和having用法详解
  6. MySQL DEFINER具体使用详解
  7. 一篇文章带你了解SQL之CASE WHEN用法详解
  8. MySQL隔离级别和锁机制的深入讲解
  9. 浅析MySQL 主键使用数字还是uuid查询快
  10. MySQL之权限以及设计数据库案例讲解