问题的出现
突然想做一个Android的app,于是开始学 Android studio (以下简称AS)的使用,来做一个app。
按照教程搭建好环境,写好第一个项目后,发现run它自带的Android模拟器总是运行不了。其中Android ARM Nougat
会显示Emulator: Warning: restoring GLES1 context from snapshot. App may need reloading.
错误。另一个Android Accelerated Nougat
执行不了,因为没有开启VT-x。
我的笔记本是小米pro,cpu为i5 8th,不支持VT。(之后检测又支持了)
所以不能用任何靠VT支持的模拟器。而AS自带的Android ARM Nougat
,运行失败是因为分配的内存不够,而要给它分配内存又需要开启VT。
那没办法,我只好去寻找不需要VT的外部模拟器。
蓝叠模拟器
在经历1个小时的寻找,发现蓝叠模拟器
是比较流畅的不需要 VT 的模拟器。
BUT 问题又出现了,蓝叠模拟器运行时需要彻底关闭hyper-V
,而我的电脑由于之前开发项目时用到了hyper虚拟机。之后在设置里关闭了,但是并不彻底,模拟器一直提示要我关闭。
最终关闭方案:
启用ADB
为了连接 AS 与 模拟器,需要启用ADB。ADB在C:\Program Files (x86)\Android\android-sdk\platform-tools
目录下。把这个目录添加到系统变量path中就可以使用ADB命令了。
添加完后,重启AS,启动模拟器。在AS的Terminal
中输入adb connect localhost:5555
,这条命令可以让AS与蓝叠模拟器进行连接。然后run的时候选中蓝叠模拟器就可以运行了。
蓝叠允许ADB调试
但是,在项目run的时候又提示Installation failed with message closed
,说明APP在模拟器上安装失败,这是因为蓝叠模拟器默认关闭了ADB调试,进入蓝叠的设置,按照图片中进行操作就可以开启了。
2019-08-28
不知道为什么,小米pro15英寸的笔记本在我运行VT-X检测时又支持了???
有知道为什么的可以联系我的QQ