文档库

最新最全的文档下载
当前位置:文档库 > Android 模拟器Emulator

Android 模拟器Emulator

Android 模拟器Emulator

Android SDK自带一个移动设备模拟器 — 它是一个可以运行在你电脑上的虚拟设备. Android模拟器可以让你不需使用物理设备即可预览、开发和测试Android应用程序.

Android模拟器能够模拟除了接听和拨打电话外的所有移动设备上的典型功能和行为. 如右图所示,Android模拟器提供了大量的导航和控制键,你可以通过鼠标或键盘点击这些按键来为你的应用程序产生事件.同时它还有一个屏幕用于显示Android自带应用程序和你自己的应用程序.

为了便于模拟和测试应用程序, Android模拟器允许你你的应用程序通过Android平台服务调用其他程序、访问网络、播放音频和视频、保存和接收数据、通知用户、渲染图像过渡和场景. Android模拟器同样具有强大的调试能力,例如能够记录内核输出的控制台、模拟程序中断(比如接受短信或打入电话)、模拟数据通道中的延时效果和遗失。

下面的章节将提供关于模拟器的详细信息,以及如何在开发应用程序中使用模拟器。

http://www.wendangku.net/doc/811fd0b5b9f3f90f76c61b7a.html/wp-content/uploads/2009/10/bdcc_emulator-hvga-p.png

启动和关闭模拟器

要启动Android模拟器,首先进入SDK的DE>tools/DE>文件夹,然后输入 DE>emulatorDE> 或DE>./emulatorDE>。这个操作将初始化Android系统,你将会在屏幕上看到模拟器窗口。

要关闭模拟器,只需要关闭模拟器窗口即可。

操作模拟器

你可以通过模拟器的启动选项和控制台命令来控制模拟环境的行为和特性。一旦模拟器启动,你就可以通过键盘和鼠标来”按” 模拟器的按键,从而操作模拟器。

下面的表格总结了模拟器按键可键盘按键之间的映射关系。

模拟器按键键盘按键

后退ESC

菜单F1 或 PgUp

开始F2 或 PgDn

呼叫F3

挂断F4

—F5, F6 未分配

电源按键F7

禁用/启用所有网络F8

开始跟踪F9 (当且仅当有DE>-traceDE>标记时有效)

停止跟踪F10 (当且仅当有DE>-traceDE>标记时有效)

主页HOME

方向键左/上/右/下小键盘 4/8/6/2

方向键中心建小键盘 5

调低音量小键盘负号(-)

调高音量小键盘加号(+)

模拟器启动选项

Android模拟器提供了很多启动选项,你可以在启动模拟器时指定,来控制其外观和行为。下面是用命令行的方式启动模拟器并指定参数的语法:

emulator [-option [value]] ... [-qemu args]

下表总结了所有有效的选项。

类型选项描述注释

帮助DE>-helpDE>以列表的形式打印模拟器的所有命令

数据DE>-data [file]DE>使用当作用户数据的磁盘镜像如果没有DE>-dataDE>,模拟器会在~/.android (Linux/Mac) 或C:\Documents andSettings\\Local Settings\Android(Windows)中查找文件名为”userdata.img”的文件。

如果使用了DE>-data DE>但不存在,模拟器会在那个位置创建一个文件

DE>-ramdisk DE>使用作为RAM镜像默认值为/ramdisk.img

DE>-sdcard DE>使用作为SD卡镜像默认值为/sdcard.img

DE>-wipe-dataDE>启动前清除用户磁盘镜像中的所有数据(参考DE>-dataDE>)

调试DE>-consoleDE>允许当前中断使用控制台Shell

DE>-debug-kernelDE>将内核输出发送到控制台

DE>-logcat DE>允许根据给定的标签为输出分类如果定义了环境变量

ANDROID_LOG_TAGS并且不为空,

它的值将被作为logcat的默认值。

DE>-trace DE>允许代码剖析(按F9键开始)

DE>-verboseDE>允许详细信息输出

DE>-verbosekeysDE>允许详细输出按键信息

媒体DE>-mic DE>使用设备或者WAV文件作为音频输出

DE>-noaudioDE>禁用Android的音频支持默认禁用

DE>-radio DE>将无线调制解调器接口重定向到主机特征设备

DE>-useaudioDE>启用Android音频支持默认不启用

网络DE>-netdelay DE>设置网络延迟模拟的延迟时间为.默认值是DE>noneDE>。请参考网络延迟模拟中表”支持的值”

DE>-netfastDE>DE>-netspeed full -netdelay noneDE>的快捷方式

DE>-netspeed DE>设置网速模拟的加速值为.默认值为DE>fullDE>。请参考网速模拟中表”支持的值”

系统DE>-image DE>使用作为系统镜像默认值为/system.img

DE>-kernel DE>使用作为模拟器内核

DE>-nojniDE>

DE>-qemuDE>传递qemu参数

DE>-qemu -hDE>显示qemu帮助信息

DE>-system

DE>

目录下查找系统、RAM和用户数据镜像

UI DE>-flashkeysDE>在设备皮肤上闪烁按下的键

DE>-noskinDE>不使用任何模拟器皮肤

DE>-onion DE>在屏幕上使用覆盖图不支持JPEG格式图片,仅支持PNG格式图片

DE>-onion-alpha DE>指定onion皮肤的半透明值(单位%).默认值为50

DE>-skin DE>用指定皮肤启动模拟器SDK提供了4个可选皮肤:

· QVGA-L (320×240, 风景) (默认)

· QVGA-P (240×320, 肖像)

· HVGA-L (480×320, 风景)

· HVGA-P (320×480, 肖像)

DE>-skindir

DE>

目录下查找皮肤

使用模拟器控制台

每一个运行中的模拟器实例都包括一个控制台,你可以利用控制台动态的查询和控制模拟设备的环境。例如,你可以利用控制台动态的管理端口映射和网络特性,还可以模拟电话时间。要想进入控制台输入命令,你需要使用telnet连接到控制台的端口号。

你可以使用下面的命令随时随地连接到任何一个运行中的模拟器实例:

telnet localhost

假设第一个模拟器实例的控制台使用5554端口,下一个实例使用的端口号会加2,比如5556、5558…… 等。你可以在启动模拟器是使用DE>-verboseDE>选项来检测该模拟器实例使用的端口号,在调试输出的找到以”emulator console running on port number“这一行。另外, 你可以在命令行中使用DE>adb devicesDE>来查看模拟器实例和他们的端口列表。最多可以有16个模拟器实例同时运行控制台。

注意:模拟器监听端口5554-5587的来自任何电脑的连接。将来发布的版本将只接受本机的连接,但目前,你需要用防火墙阻断外部对你开发设备的5554-5587这些端口的连接。

一旦连接上控制台, 你可以输入DE>help [command]DE>来查看命令列表和指定命令的教程。

要离开控制台会话, 使用DE>quitDE> 或 DE>exitDE> 命令。

下面的章节将介绍控制台的主要功能区域。

使用模拟器皮肤

你可以让模拟器使用下表介绍的4种皮肤之一。要想指定皮肤,在启动模拟器是使用DE>-skin DE>选项。

例如:

emulator -skin HVGA-L

注意:DE>DE> 必须用大写(如果你的开发设备大小敏感)。

皮肤ID描述皮肤

DE>QVGA-LDE>320×240, 横屏 (默认)http://www.wendangku.net/doc/811fd0b5b9f3f90f76c61b7a.html/wp-content/uploads/2009/ 10/201f_e-mini-qvga-l.png

DE>QVGA-PDE>240×320, 竖屏http://www.wendangku.net/doc/811fd0b5b9f3f90f76c61b7a.html/wp-content/uploads/2009/10/

c76a_e-mini-qvga-p.png

DE>HVGA-LDE>480×320, 横屏http://www.wendangku.net/doc/811fd0b5b9f3f90f76c61b7a.html/wp-content/uploads/2009/10/

ba2f_e-mini-hvga-l.png

DE>HVGA-PDE>320×480, 竖屏http://www.wendangku.net/doc/811fd0b5b9f3f90f76c61b7a.html/wp-content/uploads/2009/10/

69c0_e-mini-hvga-p.png

运行多个模拟器实例

如果必要的话,你可以同时运行多个模拟器实例。每个模拟器实例使用独立的用户数据内存和不同的控制台端口。这令你可以独立的管理每一个模拟器实例。

然而,如果你要运行多个模拟器实例,请注意每个实例存储跨会话的持久用户数据的能力—用户设置和安装的应用程序—会受限制。具体如下:

只有第一个模拟器实例能根据会话保存用户数据。默认情况下它把用户数据保存在开发设备的DE>~/.android/userdata.img (on Linux and Mac)DE> 或 DE>C:\Documents and Settings\\Local Settings\Android\userdata.imgDE> (on Windows)文件里。你可以在启动模拟器时使用DE>-dataDE>选项来控制用户数据的存储(和加载)位置(请参考启动选项)。

在第一个实例后启动的模拟器实例(并行的)在会话过程中也保存用户数据;但它们but they 不为下一个会话保存它。这些实例将数据保存在临时文件中,当实例退出时,相应的临时文件会被删除。

在模拟器上安装应用程序

要想在模拟器上安装应用程序安装,要用到adb工具。

注意:模拟器通过重启保存用户设置和安装的程序。默认情况下,模拟器将数据保存在开发

设备的一个文件里。在Linux和Mac操作系统下,模拟器将用户数据报讯在DE>~/.android/ userdata.imgDE> 。在Windows下,模拟器将数据保存在DE>C:\Documents and Settings\\Local Settings\Android\userdata.imgDE>。模拟器用userdata.img文件的内容作为DE>data/DE>的目录。