在更新到Android Studio 2后,当我试图运行我的应用程序并选择一个模拟器时,我等待模拟器启动,它突然被杀死。我可以看到模拟器进程几分钟,但从来没有GUI。在Android studio中,我得到了错误
android studio Error while waiting for the device: The emulator process for AVD was killed
即使我在Android Studio之外运行模拟器也会发生这种情况。我试用了Android 6和基于Android 4.4的模拟器。
在Windows 7 x64 PC上运行。类似于另一个StackOverflow帖子被关闭。我尝试了各种ram、VM堆和分辨率设置。
解决此错误的最佳5个选项,avd的模拟器进程被杀死
given option are checkpoints, check it out one by one.
Error Solution Option 1
Possiblity:
HAXM may not installed in System
HAXM - Hardware Accelerated Execution Manager
Solution:
SDK Manager > Check for HAXM installer
install it, if HAXM not installed
=======================================
Error Solution Option 2
Possiblity :
Low disk size to load Emulator
Latest AVD with API level 30+ required approx 7 GB disk space
Solution:
Free space from disk where AVD is located
=======================================
Error Solution Option 3
Possiblity :
Configured AVD API may not available in SDK Manager
As an Example:
if Emulator with API level 30, same package of API 30 should be installed in SDK
Solution:
Install same version of SDK Platfrom from SDK manager,
as same as Emulator – AVD API
=======================================
Error Solution Option 4
Possiblity :
Configuration error in Old AVD
Solution:
Recreate AVD with latest available update
Help > check for update, if component Android Emulator Update is available, install it
delete older AVD and create Fresh AVD
=======================================
Error Solution Option 5
Possiblity :
Embedded AVD not properly load with available image
Solution:
Launch AVD as independent component,
After success close it and lauch within Android Studio
Emulator inside Android Studio
=======================================
before apply all of above once restart you System, try it.
有关视频支持的更多帮助,请参阅如何修复AVD被杀死
我想它可能对你有帮助。
总结一下:
Install and reinstall HAXM 7.5.6 (only available version) under 'Android SDK' settings. Try downloading it manually, even other versions (they don't work with Android SDK), installing it from the Android/Sdk folder, etc. sc query intelhaxm in cmd should show if it is running correctly.
Virtualization is enabled in your BIOS and has been tested
Made sure the PATH variables are correct (ANDROID_HOME / ANDROID_SDK_ROOT) but NOT (ANDROID_SDK_HOME) to the folder in your settings per Here. Otherwise, you will see EVENTS on the Android Studio splash screen.
Try unchecking / rechecking Launch in a tool window in Emulator settings (and even Enable Device Frame in AVD settings)
Try rebuilding in several different combinations of android, different phones, etc (but with same levels and packages ... 30 for example)
Try Rebooting in several different configurations
Make sure all SDK Tools are up-to-date, and even try a fresh install of Android Studio. However, tried removing all of them, and adding them back.
Check your space, try to have 25GB maybe or more free
Check for Virtual Box, Antivirus Software, etc.
Open Android Studio with Administrator privileges
运行在双显示器/坞站上?
A)在不插任何插头的情况下运行模拟器,然后插回显示器!(我知道很奇怪)……或者更好的是……
B)创建一个新的硬件配置文件,它将使您能够将图形:自动更改为软件。
如果你的用户名不是ascii/有空格,那么这可能会有帮助,因为我尝试了这里所有的解决方案,不能解决这个问题:
注:我在这个视频中找到了这个解决方案,是一个叫“tatachka”的用户建议的,这是她的评论(她很友好地让我分享在这里)。
For example, I had this path
c:\Users\Таня.android\avd\Nexus_One_API_24.avd My name in Windows is
Таня, written in Cyrillic in windows encoding (cp1251). I changed the
path to e:\Distribu\AVD.android\avd\Nexus_One_API_24.avd I moved
files from disk C there and edited Nexus_One_API_24.ini changing the
path in it and everything worked.
How to change the folder path: My computer -> properties -> advanced
system parameters -> environment variables - > lower 'New...' button:
variable name: ANDROID_SDK_HOME variable value: e:\Distribu\AVD
(in my case)
After the reboot, a new folder(.android) appears in the folder
e:\Distribu\AVD containing the 'avd' folder
编辑:为了澄清,这里的想法是您不希望路径具有非ascii字符。我把它移动到C:\programs_that_cant_read_hebrew(并执行了其他步骤),它工作得很好。
编辑:在注释后将“英文”更改为“ascii/空格”
如果您使用McAfee防病毒和Windows 10,这可能会帮助您:
根据snehatilak的建议,卸载并重新安装Android Emulator最初对我的情况有所帮助,但第二天模拟器又死机了。
我发现McAfee杀毒软件已经隔离了文件avd .conf,原来是在C:\Users[username].android\avd[avdImage]\
在恢复AVD.conf并从扫描中排除它之后,它似乎又好了。
这一切都始于2021年2月2日,我猜是在McAfee更新之后。
以下是步骤:
首先转到“设置”下的“隔离项目”并恢复AVD.conf文件
然后转到“设置”下的“实时扫描”,在你创建的每个模拟器中排除AVD.conf。(位于C:\Users[username].android\avd[avdImage])
以我为例,在安装了Microsoft Visual c++ Redistributable for Visual Studio 2015、2017和2019 (x86和x64版本)后,问题就解决了。
但是等等!我怎么会知道?我将告诉你我的经历。
当您的程序遇到错误时,您需要做的第一件事是找到要调试的日志。但是记录Android模拟器所有事件的日志文件在哪里?单击帮助→显示登录资源管理器。然后打开一个新窗口,其中有一个名为idea.log的文件,这个日志文件就是我们要找的。
但是这个文件可能记录了太多的详细信息,所以让我们执行以下过程来获得一个更简单的信息:
·退出Android Studio
·删除idea.log
·开放Android Studio
·点击工具→AVD管理器
·启动一个你已经创建的模拟器,不用说,错误将再次发生。但是现在将创建idea.log,并将错误记录到日志文件中!
·退出Android Studio。
·打开idea.log并开始分析它。
·搜索“模拟器”,在我的情况下,有2条消息吸引了我的眼球:
INFO - manager.EmulatorProcessHandler - Emulator: E:\cache\SDK\emulator\emulator.exe -netdelay none -netspeed full -avd Nexus_5_API_22
INFO - manager.EmulatorProcessHandler - Emulator: Process finished with exit code -1073741515 (0xC0000135)
显然,“退出码1073741515”很重要,实际上很多人都问过它在StackOverFlow中是什么意思,但不幸的是,我找不到关于它的任何有用信息。所以让我们传递它,专注于第一条信息。
打开命令行(按“Win”+“R”→进入“CMD”→单击“确定”),复制上述消息E:\cache\SDK\emulator\emulator.exe -netdelay none -netspeed full -avd Nexus_5_API_22
并将其粘贴到命令行。按回车。
我完全不知道这个命令是什么意思,但是可以合理地推断Android Studio运行了这个命令并导致了错误,所以我将尝试重现这个问题。
之后,弹出一个错误窗口,提示“…VCRUNTIME140_1.dll丢失…”。我知道我已经接近答案了。所以我在谷歌上搜索“VCRUNTIME140_1.dll Missing”,人们说“下载并安装Microsoft Visual c++ 2015 - 2019 Redistributable的x86和x64版本将解决这个问题”。
所以我下载了x86和x64版本并安装它们。完成此操作后,再次运行模拟器,一切正常。
我最近在我的Mac 10.14.6 Mojave上遇到了这个问题,错误与gokhhan -arik https://stackoverflow.com/a/66422209/15311922中的一个答案中的错误完全相同。
在他的案例中,他通过更新到11.2.1 Big Sur解决了这个问题。
我的解决方法不同。
从终端运行:
/Users/<username>/Library/Android/sdk/emulator/emulator emulator -avd <Pixel_4_API_29> .
我的错误信息:
dyld: Library not loaded: /System/Library/Frameworks/IOUSBHost.framework/Versions/A/IOUSBHost
Referenced from: /Users/<username>/Library/Android/sdk/emulator/qemu/darwin-x86_64/qemu-system-x86_64
Reason: image not found
Abort trap: 6
我设法从我朋友的笔记本电脑上获得IOUSBHost.framework,然后将其上传到谷歌驱动器(zip格式),然后执行以下步骤:
重启mac并命令+R显示恢复选项,选择Safari图标以恢复模式启动Safari
在safari中,打开我之前上传的谷歌驱动器链接,然后直接将zip文件下载到/System/Library/Frameworks/(它会自动解压缩)
重启笔记本电脑。
现在,你可以使用模拟器无需更新到大苏尔。
这里是IOUSBHost.framework.zip。使用它的风险由你自己承担。https://drive.google.com/file/d/1ZP6rfMf-iW3j8iOGQC52zIHZcs4Haid1/view?usp=sharing
如果你将模拟器升级到30+版本并运行mac < 10.15,我会得到同样的错误
如果从命令行运行它,就会看到真正的错误
~/Library/Android/sdk/模拟器-avd - <
emulator: Android emulator version 30.5.3.0 (build_id 7196367) (CL:N/A)
dyld: Library not loaded: /System/Library/Frameworks/IOUSBHost.framework/Versions/A/IOUSBHost
您可以通过以下步骤修复此问题,以升级到Big Sur或降级模拟器。
wget https://dl.google.com/android/repository/emulator-darwin-6885378.zip
zip解压emulator-darwin-5395263。
mv ~/图书馆/Android/sdk/模拟器~/Library/Android/ Android/ Android/模拟器
mv模拟器~/图书馆/Android/sdk/模拟器
cp ~/Library/Android/sdk/ previoter /package.xml ~/Library/Android/sdk/ package.xml
检查是否成功:
cd ~
~ /图书馆/ Android / sdk /模拟器/模拟器- version
28.0.25.0
~ /图书馆/ Android / sdk /模拟器/模拟器-list-avds
源https://groups.google.com/g/flutter-dev/c/uEthfwjZBAQ/m/HSFqTgYsAgAJ
2021年4月8日编辑:我更新了模拟器链接到评论中提到的新版本
这个错误非常普遍,这种症状可能是由于一百万个完全不同的问题中的任何一个造成的。
你要做的是找到更多关于正在发生的事情的信息,这样你就不会看起来像一只瞎鸡在啄食令人作呕的石头。
因此,让我们得到调试步骤:
first thing is to find the logs of Android studio. In doubt, stackoverflow already has a section to help you How to find the logs on android studio?. The text file should be named: "idea.log". You can open it with notepad, but only open it after android studio is closed (in windows 10).
There will be a lot of events inside. Search by "manager.EmulatorProcessHandler" and the last date that you had the error. A good trick to facilitate your life, after having found the log file, is to close Android studio: delete the log file; reopen android studio and retry to open the emulator. The log file will be recreated with a lot less history and so it will be so much easier to search.
In my case, i found: manager.EmulatorProcessHandler - Emulator: emulator: ERROR: Another emulator instance is running. Please close it or run all emulators with -read-only flag.. Given that, it is easy to solve. I just had to open a process manager and terminate the emu process that didn't correctly close for some unknown reason.
Of course, in our case the log will be completely different. But now you have a clue of the hidden criminal.
尽管这个问题是专门为Windows提出的,但我将为MacOS 11.4 Big Sur给出我的答案,因为这个线程是谷歌上搜索这个问题时的第一个热点,而且已经给出的答案都没有解决我的问题。
我在这里找到了问题的解决方案-出于保留的原因,我将重复详细的步骤:
打开终端,进入目录/Users/<username>/Library/Android/sdk/emulator/qemu/darwin-x86_64/
创建一个名为entitled . XML的XML文件,内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
"http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.security.hypervisor</key>
<true/>
</dict>
</plist>
退出模拟器
Codesign -s -——entitlement entitlement .xml——force qemu-system-x86_64
启动模拟器
在Android Studio Go to Help ->显示浏览器中的日志
尝试再次运行模拟器的错误如下:
handleCpuAcceleration:特征检查hvf
无法添加库vulkan-1.dll:失败
无法添加库vulkan-1.dll:失败
然后安装Microsoft VS Code,转到下面的路径
C:\Users<User>\AppData\Local\Programs\Microsoft VS Code
复制vulkan-1.dll并粘贴到下面的路径
C: \用户<用户> \ AppData \本地\ Android模拟器\ \ lib64
对我来说,这些解决方案是有效的
如果使用Mac Intel酷睿i7,请选择“x86”作为ABI。在“Virtual Device Configuration”界面中,有三个页签:
推荐
x86图片
其他图像
选项卡1和2很可能具有适合您计算机的ABI。但我曾经错误地去了Other Images,选择了arm64-v8a的ABI。
这个答案类似于https://stackoverflow.com/a/66059850/2848676,除了它是针对运行英特尔而不是苹果硅(M1)芯片的Mac。
这两个答案的概括是确保您选择的ABI与您的计算机兼容。例如,在我的“Other Images”选项卡上,它明确地警告我“考虑在x86主机上使用x86系统映像以获得更好的模拟性能”,但不幸的是,直到后来我试图解决这个问题时才看到这个警告。