I know that similar questions have been asked before, but my problem is new only after installing Android Studio 2.3, the latest version in March 2017. I have several years experience developing Android applications, and I have never encountered this problem before. After upgrading to version 2.3 of Android Studio, my emulator is no longer able to access the internet. I even uninstalled/reinstalled Android Studio 2.3 from scratch and created a new emulator, and I am still getting the same error. This is not an app problem. I can't even access the internet from Chrome, and I wasn't having this problem last week. The message that I get says that the server DNS address could not be found -- DNS_PROBE_FINISHED_BAD_CONFIG. The only thing that has changed on my computer in the last week is the new version of Android plus possibly updates to Windows 10. And yes, my computer has access to the internet. Below is an image of my emulator when I try to use Chrome to search for "Google".
当前回答
专业提示:在Linux上使用AVD和dnsmasq
要理解你,请阅读从Android Studio设置Android模拟器网络。
被模拟设备的环回为127.0.0.1,可以从10.0.2.2访问被模拟设备的主机环回。
在启动时,模拟设备通过从/etc/resolv.conf中的主机中选择DNS名称服务器来设置它的DNS名称服务器。
但重点是,如果你正在使用dnsmasq,你setnameserver 127.0.0.1in/etc/resolv.conf ',所以模拟设备将击中它自己的环回,那里没有任何运行,而不是主机环回,那里有一个DNS服务器运行。
在命令行下运行AVD时,需要添加-dns-server。
例如:
云耀斑DNS: ~/Android/Sdk/模拟器- avdk_nexus_9_api_23 - DNS -服务器1.1.1 主机dnsmasq: ~/Android/Sdk/模拟器- avdd Nexus_9_API_23 -dns-服务器1.0.2.2
其他回答
适用于苹果MacBook M1用户
自2022年2月1日起生效
Android模拟器 转到扩展控制。 然后进入代理(Tab)下的设置, 使用Android studio HTTP代理设置 单击Apply 重新启动/冷启动模拟器。
这将修复模拟器上的互联网连接问题。
在8.8.8.8更新我的WIFI适配器以解析DNS为我解决了这个问题。这是在苹果的一次更新搞乱了DNS地址之后发生的。
这发生在我身上时,模拟器冻结,我必须杀死进程。信号图标总是显示屏幕截图中的小“x”,没有网络连接成功。
唯一有帮助的是卸载和重新安装模拟器(不是AVD图像)
在Android Studio中:
工具-> Android -> SDK管理器 取消选中“Android模拟器”,让它卸载,然后再次检查,让它重新安装。
在我的情况下,它是查尔斯代理应用程序。即使关闭应用程序,模拟器仍然不能访问互联网。需要停止监听查尔斯的网络。
正如@osama buzdar所指出的,模拟器首先查看的DNS设置可能在/etc/resolv.conf中指定。在我的情况下,macOS Catalina 10.15.7,该文件中有2个地址:第一个是IPv6,第二个是IPv4,由于某种原因,模拟器可能在IPv6上有问题。
然后我编辑文件(sudo vi /etc/resolv.conf),并将IPv4移到文件的第一个条目,在IPv6之前。重新启动模拟器,它工作了。
推荐文章
- 警告:API ' variable . getjavacompile()'已过时,已被' variable . getjavacompileprovider()'取代
- 安装APK时出现错误
- 碎片中的onCreateOptionsMenu
- TextView粗体通过XML文件?
- 如何使线性布局的孩子之间的空间?
- DSL元素android.dataBinding。enabled'已过时,已被'android.buildFeatures.dataBinding'取代
- ConstraintLayout:以编程方式更改约束
- PANIC: AVD系统路径损坏。检查ANDROID_SDK_ROOT值
- 如何生成字符串类型的buildConfigField
- Recyclerview不调用onCreateViewHolder
- Android API 21工具栏填充
- Android L中不支持操作栏导航模式
- 如何在TextView中添加一个子弹符号?
- PreferenceManager getDefaultSharedPreferences在Android Q中已弃用
- 在Android Studio中创建aar文件