启动 AVD 后仅几秒钟,模拟器就显示 OPENGL 图形驱动程序崩溃了,显示详细信息揭示了以下内容。
Operating system: Windows NT
6.1.7601 Service Pack 1
CPU: amd64
family 6 model 58 stepping 9
4 CPUs
Crash reason: EXCEPTION_ACCESS_VIOLATION_READ
Crash address: 0x18
Assertion: Unknown assertion type 0x00000000
Process uptime: 2 seconds
Thread 0 (crashed)
0 ig7icd64.dll + 0x173f8a
...
似乎与intel显卡驱动程序ig7icd64.dll有关,但无法找到修复程序。
到目前为止,以下尝试已不成功
更新intel显卡驱动,最新版本有问题,如果不重新安装windows,尝试旧版本似乎是不可能的。
尝试过不同目标级别的android SDK,不同CPU类型的AVD,从头开始重新创建AVD,似乎没有什么可以改变错误。
启用/禁用软件渲染甚至不会改变错误。
重新安装一切也没有帮助。
您只需单击 AVD Manager 擦除用户数据,然后单击笔编辑您的设备并将图形设置更改为软件。这解决了我的问题。
经过一番努力和尝试,我终于能够通过在c:\windows\system32
中复制旧版本的
ig7icd64.dll来解决问题,同时我已经安装了最新的驱动程序。 (我相信卸载并重新安装旧版本的显卡驱动程序也可以)。
对我有用的版本是
10.18.10.4276
给我带来各种问题的版本是最新的版本:
10.18.10.4425
还有
需要使用软件渲染,硬件渲染还是会崩溃,因为显卡不支持
我遇到了同样的错误,即 EXCEPTION_ACCESS_VIOLATION_READ。
当我在 Android SDK Manager 上更新模拟器 SDK 版本时,这种情况开始持续发生。之后,我无法在任何 API 级别启动任何模拟器(总是崩溃)。
所以我的解决方案是安装旧版本的模拟器 SDK,我相信我是从 33.1.2 降级到 31.3.12。
只需按照此官方文档了解如何降级模拟器版本
只需卸载模拟器 SDK 并重新安装即可。 转到工具 -> SDK 管理器 -> SDK 工具