AndroidStudio自带模拟器不能上网问题

作为Android开发者最头疼的就是适配各种机型问题,最近遇到一个BUG可能和Android9.0有关但是刚好暂时没有9.0的手机,没办法只能先用模拟器调试一下。平时用Genymotion比较多,这次想起来之前用AS自带模拟器无法联网当时没时间研究,刚好现在可以研究一下。

Android模拟器从最初的相当难用到现在已经可以说比较好用了,Mac没用过这里不提,Windows下Intel x86架构的平台可以开启HAXM硬件加速,AMD平台目前也有针对性优化但是整体体验差的多。开启模拟器前先更新SDK和platform版本到最新,AS版本我用的3.5 Beta 5官网可以下载但还没有正式发布。

SDK Tools

创建Android 9.0 API 28的模拟器
创建模拟器

如果直接从AVD Manager启动模拟器是无法使用电脑网络上网的,百度加查询官网文档得知模拟器默认使用的DNS是10.0.2.3-10.0.2.6和电脑DNS不一致怎么办?网上一大堆教你修改模拟器DNS的方法但是时间都比较久远了,新版模拟器已经不再适用。这里发现一篇十分有用的文章http://www.debugger.wiki/article/html/1560833165675998解决方式是关闭IPv6功能,他的是Mac我试了下自己的Windows并不能解决,但是仔细看文章中引用的一段官网说明给出了答案
DNS设置

官网传送门:https://developer.android.com/studio/run/emulator-networking

文档给出了模拟器联网的解决办法: 通过命令行启动模拟器,配置你想要设置的DNS地址即可。具体步骤如下:
  • 打开SDK目录进入emulator文件夹
  • Windows 10下shift+右键选择 在此处打开Powershell窗口
  • ipconfig /all查看本机DNS
  • 输入命令 .\emulator -avd 模拟器名 -dns-server 你自己的DNS地址
  • 模拟器启动后浏览器打开百度验证联网是否成功
访问百度验证联网

至此成功解决Android Studio自带模拟器无法联网问题。本文仅做记录,如有错误感谢指出。转载请注明出处。

你可能感兴趣的:(AndroidStudio自带模拟器不能上网问题)