Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/209.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么Android仿真器这么慢?我们如何提高Android模拟器的速度?_Android_Performance_Android Emulator_Genymotion_Qemu - Fatal编程技术网

为什么Android仿真器这么慢?我们如何提高Android模拟器的速度?

为什么Android仿真器这么慢?我们如何提高Android模拟器的速度?,android,performance,android-emulator,genymotion,qemu,Android,Performance,Android Emulator,Genymotion,Qemu,我有一个2.67GHz赛扬处理器,在x86WindowsXP专业机器上有1.21GB内存 我的理解是,Android Emulator应该在这样的机器上快速启动,但对我来说,它不能。在设置IDE、SDK、JDK等方面,我遵循了所有的说明,并在快速启动模拟器方面取得了一些成功,但这是非常罕见的。如果可能,我如何解决此问题 即使它启动并加载主屏幕,也会非常缓慢。我已经在(伽利略)和(木卫三)中试过了。Eclipse(旧)版本中包含的模拟器速度非常慢 最近的模拟器比2010年的速度更快。更新SDK/I

我有一个2.67GHz赛扬处理器,在x86WindowsXP专业机器上有1.21GB内存

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


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

Eclipse(旧)版本中包含的模拟器速度非常慢

最近的模拟器比2010年的速度更快。更新SDK/IDE


就我个人而言,我用一部真正的手机来做测试。它更快,测试更真实。但是,如果你想在许多不同的Android版本上测试你的应用程序,又不想买几部手机,你就必须不时地使用模拟器。

中描述的
-cpu delay
选项会有帮助。

尝试禁用你的防病毒软件。也许它会使emulator更快一些。

我注意到,如果没有连接Dalvik Debug Monitor Server(DDMS),emulator的启动速度会更快。因此,如果从虚拟设备管理器“SDK Setup.exe”启动仿真器,而Eclipse未启动,则仿真器的运行速度会更快


如果从Eclipse启动仿真器:DDMS在那里,因此有时仿真器非常慢,但有时速度更快。

仿真器的启动非常慢。好的是,您只需要启动模拟器一次。如果仿真器已在运行,而您再次运行应用程序,则仿真器会相对较快地重新安装应用程序。当然,如果你想知道它在手机上的运行速度,最好在真正的手机上进行测试。

添加更多信息

我最近将Ubuntu安装升级为LTS(Lucid Lynx),这反过来又将我的Java版本更新为:

Java version "1.6.0_20"
Java(TM) SE Runtime Environment (build 1.6.0_20-b02)
Java HotSpot(TM) 64-Bit Server VM (build 16.3-b01, mixed mode)
现在模拟器(虽然启动需要一段时间)似乎比以前运行得更快


可能值得人们升级JVM。

您可以使用以下命令创建emulator.bat来启动emulator。它会启动得更快

emulator.exe -cpu-delay 0 -no-boot-anim @<avd name>
emulator.exe-cpu延迟0-无启动动画@
或在Unix(Mac或Linux版本)上:

仿真器-cpu延迟0-无启动动画@

我在Xubuntu 10.04 3.2.12 guest上运行Intel Core i7 920 2.67GHz CPU,加载Eclipse(3.6.1)时,加载emulator(SDK v8.0)的时间是间歇性的,最长为三分钟。我将VirtualBox来宾内存从1024MB更改为2048MB,从那时起,我再也没有经历过这种缓慢(加载时间一致为33秒,CPU负载一致为20%)。Eclipse和emulator都占用大量内存。

我注意到,我的emulator(插件)由于图形卡抗锯齿设置而大大降低了速度。从“图形”菜单中删除2倍抗锯齿,并将其更改为“应用程序控制”,使其响应速度更快。它仍然很慢,但比过去要好

Android emulator 9版有一个新的“快照”功能。启动仿真器时,您可以(制作仿真器的映像)并避免引导。

更新

现在可以为Android Emulator启用快速启动选项。这将保存emulator状态,并在下次引导时快速启动emulator

单击Emulator编辑按钮,然后单击显示高级设置。然后启用
快速启动
,如下面的屏幕截图所示

(或更高版本)有一个功能,允许您保存AVD(仿真器)的状态,并且您可以立即启动仿真器。您必须在创建新AVD时启用此功能,或者您可以稍后通过编辑AVD来创建它

此外,我还将
设备RAM大小
增加到
1024
,这使得模拟器速度非常快

有关更多信息,请参阅下面给出的屏幕截图

使用保存快照功能创建新的AVD

从快照启动模拟器

要加快仿真器的速度,您可以参考:


使用ssd硬盘有太多的影响,我建议使用更合适的ram(8或更高)

在开发了一段时间后,我的模拟器变得非常慢。我选择了擦除用户数据,效果要好得多。我猜加载您部署的每个文件都需要时间。

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

  • 安装
  • 下载您需要的文件
  • 创建一个虚拟机作为Linux 2.6/Other Linux,512MB RAM,HD 2GB。网络:PCnet Fast III,连接到。您也可以使用桥接适配器,但您的环境中需要一台服务器
  • 在模拟器上安装Android x86,然后运行它
  • 按Alt+F1,键入
    netcfg
    ,记住IP地址,按Alt+F7
  • 在WindowsXP系统上运行cmd,将目录更改为Android工具目录,键入
    adb connect
  • 启动Eclipse,打开ADT插件,找到设备,然后享受 当前(2011年5月)版本的仿真器速度很慢,特别是在硬件方面,主要是因为仿真器不支持硬件GL——这意味着GL代码被翻译成软件(事实上是ARM软件),然后在中的软件中进行仿真。这太慢了。他们正在解决这个问题,并已部分解决,但没有任何发布质量


    查看视频以查看它的运行情况——跳到大约44分钟。

    模拟器在空闲时似乎会减慢速度。通过快速将鼠标移到侧面的按键上并观察灯亮起,这一点很明显
    emulator -cpu-delay 0 -no-boot-anim @<avd name>
    
    emulator @my_avd -no-boot-anim -qemu -icount auto
    emulator -avd <avd_name> -gpu on
    
    sudo kextload -b com.intel.kext.intelhaxm (mac)
    
    adb connect 127.0.0.1