Mac上的Android模拟器滞后

Posted

技术标签:

【中文标题】Mac上的Android模拟器滞后【英文标题】:Android emulator laggy on Mac 【发布时间】:2011-12-18 06:46:07 【问题描述】:

首先,是的,我知道有很多类似的话题,我确实使用了堆栈溢出的搜索功能。

但提出的大多数问题似乎都与启动时间有关。

对我来说,模拟器太慢了,从一个主屏幕滑到另一个主屏幕就像看幻灯片一样。我在虚拟设备中放入了更多“RAM”,但没有任何变化。

我该如何解决这个问题?

我在 Mac OS X Lion 上使用 Macbook Pro 2010。

【问题讨论】:

这是一个模拟器;它会很慢。 嗯,我上次在单独的 Windows 笔记本电脑上使用模拟器时,它运行得非常流畅。 Windows != OSX 等。很多差异。不是虚拟设备中的 RAM 会加快速度,而是模拟器 程序 设置可能会有所作为。 最好习惯它 :) 模拟器 真的很慢,需要 很多 的 CPU 能力。 它终于可以使用官方的android工具进行虚拟化,即使在GPU加速的情况下也能以原生速度运行。 ***.com/a/10754883/1031077 【参考方案1】:

最新版本的 Android SDK 支持 x86 和本机执行。现在可以在 Mac 上以本机速度运行模拟器,但需要手动完成一些工作。

首先,您需要最新的 SDK 工具 rev.19+ 和平台工具 rev.11+、适用于 4.0.3 到 4.4 的 Android x86 Atom 系统映像和英特尔硬件加速执行管理器 (HAX),所有这些都来自 Android SDK经理。

在此之后您需要安装 HAX,不幸的是 SDK 管理器下载了一个过时的版本。有Intel-HAXM hotfix v1.0.8

当您创建一个新的 AVD 以使用这个最新的系统映像并在其上启用 GPU 支持时(目前快照支持与 GPU 不兼容,但它仍然值得。VM 将在几秒钟内启动无论如何。

它大大加快了 Android 的开发速度,可惜它不是开箱即用的。

【讨论】:

我需要重新启动 Eclipse 才能获得 CPU/ABI Intel Atom (x86) 选项。 我安装了一个带有股票选项的 nexus7 映像,并将分辨率更改为:13 英寸,启用了 HAX(当然,使用英特尔 Atom x86 作为 CPU),并启用了主机 GPU。该死的快!之前对 nexus10(具有股票分辨率)的尝试非常滞后和沉重! 到目前为止,SDK 安装了当前的 HAX 版本。顺便说一句,这个答案应该被接受! (Saludos de Victor MMS ;-) 感谢这个答案,我让 4.1.2 和 4.2.2 模拟器现在运行得非常快。 你白白浪费了我数千小时!【参考方案2】:

如果有人想出更好的东西,赏金仍然开放。

但到目前为止,我发现在 Mac OSX 上测试 android 的唯一解决方案是使用 VM。您仍然可以像往常一样使用 ADT/abd 从 Eclipse 构建/安装您的应用程序

有关分步说明,请参阅http://software.intel.com/en-us/blogs/2011/10/11/getting-started-on-android-for-x86-step-by-step-guide-on-setting-up-android-2223-for-x86-testing-environment-in-oracle-virtualbox/。

【讨论】:

【参考方案3】:

试试 genomotion 模拟器! 它的速度非常快,而且比其他模拟器更轻*!

    到这里https://cloud.genymotion.com/page/customer/edit/,然后注册 下载 IntelliJ Idea/Android studio 插件和应用程序(适用于 Linux/Mac/Windows) 安装应用程序。安装插件(首选项/插件/从光盘安装) 打开应用程序。使用注册凭据登录。从 genymotion 的云端下载图像(例如,nexus7 w/o gapps) 在IntelliJ/Android Studio中选择genymotion图标,并选择Application的路径
      在 genymotion 模拟器中运行您的应用程序!注意:它将显示为“USB 设备”而不是模拟器!

*我已经尝试过带有 intels HAXM 的 nexus7。它也超级快,但它非常重! Genymotion 轻得多!

Edit2:我在使用这个模拟器时遇到了一些奇怪的错误。运行模拟器时,如果物理键盘语言不是英语,我可以将文本输入添加到 EditText!

【讨论】:

这个 Genymotion 真的很快,让我很开心!到目前为止,我为我的 2009 年末运行 MountainLion 服务器的 MacMini 找到了最好的提示。非常感谢 Paschalis! 一开始速度很慢,但是用了一段时间后变得非常快。也许它正在做一些缓存?非常感谢您推荐这个!【参考方案4】:

如果您仍想尝试使用默认模拟器的一些提示:

1) 缩小屏幕尺寸。不要费心构建一个 1280x800 屏幕的模拟器,模拟器会窒息它,因为它只使用一个 CPU/进程(不确定)来完成从 ARM 到 MacOS 的所有转换,并在软件中完成所有屏幕渲染.我认为一般建议是使用 800x480 或 1024x700。更少的像素=更少的延迟。哎呀,试试 480x320,如果它在你的机器上真的很糟糕。

2) 如果您可以使用旧版本的 SDK,例如 1.6,请这样做。 Froyo 和 Gingerbread 更高级的主屏幕消耗了部分性能。

3) 为模拟器分配更多内存。如果您使用的是日食: 转到首选项。 选择“启动” 在“默认模拟器选项”上添加“-partition-size 1024” 点击“应用” 您可能已经这样做了,但为了清楚起见添加了。

[MC] Oops (3) 是分区大小,-m 是内存。

【讨论】:

我一直在玩其他 AVD/模拟器设置。使用具有默认设置的 Nexus-One AVD 800x480 并启用快照,我的启动/启动时间从 8 分钟减少到 2 分钟。然而,显示更新仍然非常缓慢,尤其是设备旋转!不幸的是,我无法同时启用“使用主机 GPU”和“快照”功能。我的设置:2009 年末 MacMini,4 GB-RAM 1067 MHz DDR3,2.53 GHz Intel Core 2 Duo,NVIDIA GeForce 9400 256 MB,OSX 10.8.5 @ios-Coder 如果您查看模拟器页面developer.android.com/tools/devices/emulator.html,您会看到“快照”和“GPU”是互斥的,因此您只能做一个或另一个。 “快照”仅适用于重新启动,通常我只是让模拟器运行一整天,所以我会选择“GPU”而不是“快照”。看起来你发现 Genymotion 好运!

以上是关于Mac上的Android模拟器滞后的主要内容,如果未能解决你的问题,请参考以下文章

是否可以在 MAC 上的 Android Studio 中使用 IOS 模拟器设备?

在 Mac OS 上的 android 模拟器上安装 apk

在 Mac 上的 Android 模拟器中收到错误的纬度/经度

M1 mac 上的 android studio 和 manager 错误(未安装模拟器)

在mac上搭建完成 开发环境之后 跑android 项目 模拟器连接不上的问题 模拟器是genymotion

动画在设备上滞后,但在模拟器中不滞后