直到最后一个 SDK 版本,我的 Android 模拟器在 x86 架构上运行得非常好,安装了 Intel HAXM 并在 AVD Manager 中为设备启用 GPU。
使用最新的 SDK 版本,我重新安装了 Windows(从 8.0 到 8.1),尝试了 1.06 和 1.07 Intel HAXM,但我的应用程序经常冻结。
它不会冻死,只是冻结/不再更新屏幕。
特别是如果我滑动 ViewPager,那么它几乎总是在页面之间冻结。
但是,如果我单击 AppBar 上的菜单项,它会自行刷新并绘制目标 ViewPage 页面。
我很感激任何建议,因为现在通过模拟器开发应用程序变得非常痛苦。
我的模拟器冻结了,我无法用其他答案修复它,但这解决了它:
工具->设备管理器
在虚拟设备的操作列中,单击右侧的三个点,然后单击擦除数据。
这将清除虚拟设备的缓存。
如果您的应用程序依赖于Google Play服务,您将需要再次更新
修复“选定的 AVD 当前正在模拟器中运行”
试试这个:
在 Android 虚拟设备 (AVD) 设置中,选择
-
edit this AVD
,然后单击show advanced setting
然后multi-core CPU
。
在 Android 虚拟设备 (AVD) 设置中,关闭 使用主机 GPU 模拟选项。不幸的是,由此产生的缓慢通常比冻结更糟糕。
使用免费的适用于 Android 的 Visual Studio 模拟器。它的速度非常快,尽管它的名字如此,但并不要求您在 Visual Studio 中工作即可使用它。 Android Studio 和 Eclipse 很高兴地将其检测为正在运行的模拟器。
对我有帮助的是在模拟器中使用较低版本的SDK,即SDK版本31(图像“S”) 请注意我写这篇文章的日期,如果您将来看到这种情况,请尝试相应地降低您的版本
停止模拟器并转到
C:\Users\YOUR_USER\.android\avd\Pixel_6_Pro_Edited_API_33.avd
并删除
version_num.cache
cache.img.qcow2
cache.img
multiinstance.lock
hardware-qemu.ini.lock
AVD.conf
会起作用的
尝试为虚拟设备提供更少的 RAM。
Android 在 4GB (=4096MB) RAM 下启动时冻结,但在 3GB (=3072MB) 下则不会冻结。
注意:我在 Linux Mint 21.1 上使用 Android Studio。
从 Android SDK 管理器中,安装 Intel x86 仿真器加速器(HAXM 安装程序)修订版 5 或更高版本,然后运行
sdk\extras\intel\Hardware_Accelerated_Execution_Manager\intelhaxm.msi
以更新 PC 上的驱动程序。这是加速器的1.1.0版本,貌似修复了卡顿的bug。
试试这个:
sdk\tools\emulator.EXE -partition-size 512 -noaudio -no-boot-anim -avd Nexus5XAPI25 -prop monodroid.avdname=Nexus5XAPI25
我添加-noaudio选项后就可以了