我在x86 Windows XP Professional机器上有2.67 GHz赛扬处理器和1.21 GB RAM。
我的理解是,Android Emulator应该在这样的机器上启动得相当快,但对我来说,它没有。我遵循了设置IDE、SDK、JDK等的所有说明,并在快速启动仿真器方面取得了一些成功,但这非常罕见。如果可能的话,我如何解决这个问题?
即使它启动并加载主屏幕,它也非常缓慢。我已经在3.5版(伽利略)和3.4版(木卫三)中尝试过Eclipse IDE。
我在x86 Windows XP Professional机器上有2.67 GHz赛扬处理器和1.21 GB RAM。
我的理解是,Android Emulator应该在这样的机器上启动得相当快,但对我来说,它没有。我遵循了设置IDE、SDK、JDK等的所有说明,并在快速启动仿真器方面取得了一些成功,但这非常罕见。如果可能的话,我如何解决这个问题?
即使它启动并加载主屏幕,它也非常缓慢。我已经在3.5版(伽利略)和3.4版(木卫三)中尝试过Eclipse IDE。
当前回答
如果您有Intel CPU,请安装Intel Hardware Accelerated Execution Manager。
然后在“仿真器设置”中将其指定为仿真器的CPU。当我在Core i7 CPU上完成这项工作时,大约需要10分钟。现在它将在15秒内打开。
其他回答
我注意到,如果没有连接Dalvik调试监控服务器(DDMS),仿真器启动速度会快得多。因此,如果您从Virtual Device Manager“SDK Setup.exe”启动仿真器,而Eclipse未启动,则仿真器的工作速度更快。
如果您从Eclipse:DDMS启动模拟器,那么有时模拟器非常慢,但有时速度更快。
在AVD管理器中,选择VD并单击编辑,将分辨率设置为很小,因为您可以读取VD上的文本。
我使用800x600像素,RAM设置为512 MB,它的工作方式就像一个魅力一样,不需要占用大量CPU时间。
我只是注意到了一些我无法解释的事情,但嘿,对我来说,这很有效!
无论如何,我是从源代码编译Android的,内置模拟器在几秒钟内启动(我的机器是双核AMD 2.7 GHz),一分钟内,也许在第一次运行时两分钟,系统就启动了。另一方面,使用EclipseADT包会导致半小时的仿真器启动。不可接受的
在这里有效的解决方案(我没有办法在其他机器上测试它,所以如果你想测试并验证):
在您的机器上下载并构建Android SDK。这可能需要一些时间(你知道,整个系统的编译是令人厌烦的)。可在此处找到说明:正在初始化正在下载构建(我将命令更改为“午宴sdk-eng”和“makesdk-j4”;此外,构建提示非常有用,尤其是关于ccache和-jN选项)完成后,运行“android”,SDK管理器将出现。下载工具和所需的平台包。如果找不到命令,请尝试重新运行“”。“build/envsetup.sh”和“午餐sdk-eng”命令来设置路径;它们在退出终端会话后丢失。运行“仿真器”以检查其启动速度。对我来说,它比Eclipse捆绑版快得多。如果这有效,请将Eclipse指向您刚刚编译的SDK。左窗格中的窗口首选项Android->选择SDK位置。它应该是带有“tools”子分区的dir,以及“platforms”子分区中的一些内容。对我来说,它是<source-base-dir>/out/host/linux-x86Apply/OK,如果需要,重新启动Eclipse。如果它没有任何抱怨,运行你的Android应用程序。在我的例子中,模拟器在几秒钟内启动,并在一分钟内完成引导。还有一点延迟,但我完全可以接受。
此外,我同意从快照运行并将状态保存到快照。我的建议只涉及模拟器启动时间。我仍然不知道为什么默认情况下会这么长。无论如何,如果这对你有用,请享受:)
启用快照可能不会使其在第一次运行时更快;不要追求大SD尺寸。第一次运行时将SD卡大小调整为100 MB。
使现代化
现在,您可以为Android Emulator启用快速启动选项。这将保存仿真器状态,并将在下次启动时快速启动仿真器。
单击Emulator编辑按钮,然后单击显示高级设置。然后启用快速启动,如下图所示。
Android开发工具(ADT)9.0.0(或更高版本)有一个功能,允许您保存AVD(仿真器)的状态,您可以立即启动仿真器。您必须在创建新的AVD时启用此功能,或者您可以稍后通过编辑AVD来创建它。
此外,我还将设备RAM大小增加到1024,这导致了一个非常快的仿真器。
有关更多信息,请参阅下面的截图。
使用保存快照功能创建新的AVD。
从快照启动仿真程序。
关于加速模拟器,您可以参考加速Android模拟器!:
使用ssd硬盘影响太大,我建议使用更合适的ram(8或更高)