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".


当前回答

在尝试了许多这些解决方案之后,我打算删除我当前的AVD并重新制作它,但当我点击AVD上的向下箭头时,我注意到“现在冷启动”。

一时兴起,我试了一下。瞧,我的模拟器又有互联网连接了!

命令行方式

如果你通过命令启动模拟器,传递-no-snapshot-load选项,比如:

%ANDROID_HOME%/emulator/emulator.exe -netdelay none -netspeed full -no-snapshot-load -avd Pixel_2_API_28

或者MacOSX:

$ANDROID_HOME/emulator/emulator -netdelay none -netspeed full -no-snapshot-load -avd Pixel_2_API_28

注意,您可能需要更改-avd Pixel_2_API_28部分(与您自己的虚拟设备名称)。 此外,大多数工具使用ANDROID_HOME环境变量名,因此定义它(如果还没有),但现在ANDROID_ROOT是另一个命名选项。

决定(编辑)

对于那些说为什么不擦除数据重新启动的人。 你每次重启电脑时都重新格式化吗?擦除模拟器上的数据就像对手机进行出厂重置或重新格式化PC上的硬盘驱动器并重新安装操作系统。除非数据完全损坏,否则这是不必要的。

当你关闭模拟器并重新启动它时,它就像将你的电脑置于休眠或睡眠模式。记忆不是被抹去,而是被保存。

冷启动和重启手机或电脑是一样的。它可以重置内存并重新加载。这允许网络模拟以干净的内存启动并正确连接。

所以,不要擦除数据。只是冷启动。如果还是没用,那就擦一下,但要留作最后的手段。

其他回答

Mac用户[UPDATE 2022

针对的不是苹果芯片用户

系统设置 网络 WiFi >选择“高级” 从高级选择DNS选项卡 添加DNS服务器8.8.8.8 模拟器必须在添加DNS服务器后重新启动(感谢@kapusch)

苹果硅用户

@bourdier-jonathan 你可以在这里修复硅的问题: 在arm64-v8a最后一次更新后,模拟器在M1 Mac上出现脱机

通过将您下载的AVD系统映像替换为r02映像。因为r03 r04 r05在m1上都不起作用

我可以让它在关机后工作,并在android配置上打开wifi

对我来说,我在模拟器中打开连接设置,断开了Android WiFi。然后在这个里面,我按了忘记连接。现在再次连接到相同的WiFi解决了这个问题。我认为这是解决问题的最快方法!

设置DNS 8.8.4.4 然后运行模拟器-avd react-native-device -dns-server 8.8.4.4

这对我很有用

我也有这个,我通过创建新的android模拟器虚拟设备解决了这个问题,并选择了Nexus 4 api 27。在我创建Pixel设备api 28之前,即使在重新创建设备后,它也无法工作。所以我尝试了完全不同的配置和Android模拟器有互联网连接的预期。其他的解决方案对我来说都不奏效,但我并没有尝试所有的方法。