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

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

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


当前回答

Android x86的使用提供了比Android模拟器更好的生产力。

与Android x86 4.2相比,它提供了极快的调试速度。配置速度快很多倍

它正在与最新的Android X86 4.2(果冻豆)和VirtualBox一起工作。

我找到了不同的方式来连接互联网和亚洲开发银行。

步骤:1选择适配器

情况1:仅Internet{NAT适配器}

最简单的解决方案是使用NAT适配器,如果主机连接到Internet,该适配器将直接将您连接到Internet。

在这里,您将获得一个公共IP地址,因此无法连接到主机。

情况2:仅ADB(仅主机适配器)

最简单的解决方案是只使用主机适配器。

注意:由于DHCP服务器设置,默认的仅主机适配器可能无法工作。创建新的HostOnlyAdapter或为现有适配器运行DHCP服务器。

案例3:亚洲开发银行和互联网(网桥适配器)

在这种情况下你必须小心。

如果您使用LAN进行Internet连接,则应将网桥适配器与以太网卡一起使用。它将为您提供本地IP地址,虚拟机将使用主机连接到Internet。

或者,如果您使用Wi-Fi,只需选择Wi-Fi适配器即可。

对于其他类型的连接,您应采用相同的方式。

步骤:2与亚洲开发银行的联系

要检查IP地址,只需按Alt+F1(对于控制台窗口)。(要切换回图形视图,请按Alt+F7。)

您将看到控制台窗口。键入netcfg。

它将显示IP地址。

现在转到主机,运行命令提示符,然后转到adb目录。

type adb connect <your IP address>

实例

adb连接192.168.1.51

注意:如果ADB未运行或未响应,您可以执行以下操作。

adb kill-server

adb start-server

您可以检查连接到ADB的设备:

adb devices

有关原始问题,请单击此处。

其他回答

Android SDK rev.17支持使用AMD和Intel虚拟化技术的虚拟机加速。

此功能可以大大提高仿真器性能!

有关更多详细信息,请参阅Android模拟器文档中的以下部分:配置虚拟机加速

不要忘记为您的操作系统安装适当的驱动程序:

在Windows上配置VM加速在Mac上配置VM加速在Linux上配置VM加速

安装驱动程序并下载Android X86系统映像(如文档中所述)后,您应该能够使用X86映像创建新的AVD:

例如:

目标:Intel Atom x86系统映像-API级别10CPU/ABI:Intel Atom(x86)

Android x86的使用提供了比Android模拟器更好的生产力。

与Android x86 4.2相比,它提供了极快的调试速度。配置速度快很多倍

它正在与最新的Android X86 4.2(果冻豆)和VirtualBox一起工作。

我找到了不同的方式来连接互联网和亚洲开发银行。

步骤:1选择适配器

情况1:仅Internet{NAT适配器}

最简单的解决方案是使用NAT适配器,如果主机连接到Internet,该适配器将直接将您连接到Internet。

在这里,您将获得一个公共IP地址,因此无法连接到主机。

情况2:仅ADB(仅主机适配器)

最简单的解决方案是只使用主机适配器。

注意:由于DHCP服务器设置,默认的仅主机适配器可能无法工作。创建新的HostOnlyAdapter或为现有适配器运行DHCP服务器。

案例3:亚洲开发银行和互联网(网桥适配器)

在这种情况下你必须小心。

如果您使用LAN进行Internet连接,则应将网桥适配器与以太网卡一起使用。它将为您提供本地IP地址,虚拟机将使用主机连接到Internet。

或者,如果您使用Wi-Fi,只需选择Wi-Fi适配器即可。

对于其他类型的连接,您应采用相同的方式。

步骤:2与亚洲开发银行的联系

要检查IP地址,只需按Alt+F1(对于控制台窗口)。(要切换回图形视图,请按Alt+F7。)

您将看到控制台窗口。键入netcfg。

它将显示IP地址。

现在转到主机,运行命令提示符,然后转到adb目录。

type adb connect <your IP address>

实例

adb连接192.168.1.51

注意:如果ADB未运行或未响应,您可以执行以下操作。

adb kill-server

adb start-server

您可以检查连接到ADB的设备:

adb devices

有关原始问题,请单击此处。

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

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

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

你需要更多的记忆。

这就是我这么说的原因:

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

对于快速测试(<1秒),使用buildroid,VirtualBox的第一个网卡设置为“仅主机网络”,然后运行

C:\Program Files (x86)\Android\android-sdk\platform-tools>adb connect *.*.*.*:5555
connected to *.*.*.*:5555

(^)DOS/bash(v)

# adb connect *.*.*.*:5555
connected to *.*.*.*:5555

其中*.*.*.*是通过单击buildroid主屏幕中的buildroid应用程序获得的buildroidIP地址。