作为一个Android开发程序员,自从用上了Android Studio就感觉要飞起来了,相对于之前的Eclipse,Android Studio有太多太多的优点,再加上目前Instant Run功能的不断完善,编译速度也是在飞速提升。为了感受最新最畅快的开发体验,作为一个不更新会死星人,每次Android Studio启动后,右上角有更新提示则一律更、更、更,这酸爽!
直到我将Android SDK Tools更新到25.2.2版本,再打开模拟器时,傻眼了:
模拟器崩溃了,控制台输出了错误日志:
出错日志显示模拟器跪在了这里:
File: /usr/local/google/buildbot/src/android/emu-2.2-release/external/qemu-android/util/error.c, Line 70
Expression: *errp == NULL
This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.
没办法,到咱程序员Facebook上面去瞧瞧,通过关键词搜索去看看有没有一样中招的先驱解决了这个问题,于是找到了这个Cannot launch AVD in emulator in android studio 2.2,里面的回答说明了这是SDK Tools的一个bug,已经提交了Issue(Issue编号223100),并且这个Issue已经被修复了,同时已经被合并到了模拟器开源项目中(合并编号282842),只是需要等到下一个SDK Tools版本发布才能被更新到,修复大神很贴心的提供了一个已修复的debug编译版本的模拟器可以下载使用(墙外原版下载地址点这里,墙内度盘下载地址点这里),下载后解压到SDK目录内,利用命令行运行启动就可以啦。
D:\SDK\emulator-2.2-local_build>D:\SDK\emulator-2.2-local_build\emulator.exe -netdelay none -netspeed full -avd Galaxy_Nexus_API_25
或者还有一个更简单有效的方法,下载解压后,将qemu文件夹覆盖SDK目录中的tools\qemu文件夹,替换掉原来的文件,然后还是按照以前的启动方式就可以正常启动啦。