我在x86 Windows XP Professional机器上有2.67 GHz赛扬处理器和1.21 GB RAM。

我的理解是,Android Emulator应该在这样的机器上启动得相当快,但对我来说,它没有。我遵循了设置IDE、SDK、JDK等的所有说明,并在快速启动仿真器方面取得了一些成功,但这非常罕见。如果可能的话,我如何解决这个问题?

即使它启动并加载主屏幕,它也非常缓慢。我已经在3.5版(伽利略)和3.4版(木卫三)中尝试过Eclipse IDE。


当前回答

模拟器速度慢。你真的无能为力,但模拟器还有其他选择。

词源-首选虚拟机安卓模拟器YouWaveWindows Android模拟器一罐豆子安迪

为了让模拟器更快,您可以托管GPU并使用更轻的Android版本(Android 2.3(姜饼))。在Mac上开发会更好。为什么要使用模拟器,BTW?使用真正的手机更有意义。

其他回答

你需要更多的记忆。

这就是我这么说的原因:

我正在Windows上使用VirtualBox作为来宾运行Ubuntu 10.10。我在VM上安装了Eclipse和Android SDK。我的物理机箱有4GB的内存,但当我第一次配置Ubuntu虚拟机时,我只给了它1GB的内存。模拟器大约需要15分钟才能启动。然后,我将配置更改为VM 2GB,仿真器在不到一分钟的时间内运行。

尝试Android x86。它比谷歌Android模拟器快得多。遵循以下步骤:

安装VirtualBox。下载所需的ISO文件。将虚拟机创建为Linux 2.6/其他Linux,512 MB RAM,HD 2 GB。网络:PCnet Fast III,连接到NAT。您也可以使用桥接适配器,但您的环境中需要DHCP服务器。在模拟器上安装Android x86,运行它。按Alt+F1,键入netcfg,记住IP地址,按Alt+F7。在Windows XP系统上运行cmd,将目录更改为Android工具目录,键入adb connect<virtual_machine_IP>。启动Eclipse,打开ADT插件,找到设备,然后享受!

我注意到我的模拟器(Eclipse插件)被我的Nvidia图形卡抗锯齿设置大大减慢了速度。从图形菜单中删除2倍的抗锯齿功能,并将其更改为应用程序控制,使其响应速度更快。它仍然很慢,但比过去更好。

简短回答:因为ARM->x86指令翻译。Emulator的工作方式与虚拟机类似,虚拟机的任务是启动一个完整的操作系统,然后运行测试应用程序。ARM->x86转换可能非常耗时,对您的应用程序来说更少,但对操作系统启动时更为耗时(这与复杂性和涉及的指令数量成正比)。

一些人建议在x86模拟器上运行代码。这意味着不需要加载基于ARM的操作系统,而是加载一个在x86机器上运行速度更快的x86变体,因为不需要ARM->x86转换。然而,这并不是一个完美的解决方案:

使用NDK并带有为ARM编译的本机库(*.so)的Android应用程序将无法在x86仿真器上运行,因此此类程序将无法运行。但是,如果您达到了这一点,并开始处理NDK/本机JNI代码,那么您可能已经对仿真器了解足够了。

我尝试从Eclipse(Indigo和Android1.5,没有快照)启动模拟器,45分钟后我停止了它,因为什么都没有发生。

统计数据:Phenom Quad@2.6 MHz,4 GB DDR2 Corsair Dominator@800 MHz。AVD位于SSD驱动器上,仿真器位于7200 RPM HDD上。

我使用-no-boot anim选项手动启动模拟器,并在30秒内加载。:)

在CMD中,导航到emulator.exe文件所在的文件夹并键入

emulator.exe @<YourAVDFromEclipse> -no-boot-anim

emulator.exe文件位于“工具”下的Android SDK文件夹中。

在Windows中,您可以在C:\Users\<NAME>\.Android\AVD下找到Android虚拟设备(AVD)。

从Eclipse内部运行的项目,以您启动的AVD为目标,显示得很好:D