Android模拟器无法访问互联网


254

我知道之前也曾问过类似的问题,但是我的问题只有在安装了Android Studio 2.3(2017年3月的最新版本)之后才是新问题。我有几年开发Android应用程序的经验,并且以前从未遇到过此问题。升级到Android Studio 2.3版后,我的模拟器不再能够访问Internet。我什至从头开始卸载/重新安装了Android Studio 2.3,并创建了一个新的模拟器,但仍然出现相同的错误。这不是应用程序问题。我什至无法从Chrome浏览器访问互联网,上周我也没有遇到这个问题。我收到的消息说找不到服务器DNS地址-DNS_PROBE_FINISHED_BAD_CONFIG。上周我的计算机上唯一发生变化的是新版本的Android,以及可能对Windows 10的更新。是的,我的计算机可以访问Internet。下面是当我尝试使用Chrome浏览器搜索“ Google”时仿真器的图像。 模拟器出现错误信息


我发现Android Studio 2.3的另一个问题与互联网访问无关,但可能与上述问题有关。在Android Studio可以打开项目并运行模拟器的情况下,我可以在模拟器上运行应用程序。但是,如果我打开Android Device Monitor,它会告诉我模拟器处于离线状态。然后,如果我关闭Android设备监视器并返回Android Studio,它还会告诉我该模拟器处于脱机状态。我必须先关闭并重新启动模拟器,然后Android Studio才能再次找到它。与上面的问题一样,此问题是可重复的。
John Moore

另一个更新。我在另一台较旧/较慢的Windows 10计算机上安装了Android Studio 2.3,该问题仍然出现。另外,我曾一度认为问题可能与Microsoft WPD修补程序错误有关,但较旧的计算机没有安装该修补程序。另外,在几次失败的尝试之后,我仍然能够从主计算机上删除错误的补丁程序,但仍然无法成功使Chrome在模拟器上运行。在这一点上,我更确定问题出在Android Studio 2.3上。
John Moore

如果您使用的是Windows,请阅读以下内容:stackoverflow.com/a/43066809/2827025
anemomylos

1
我认为这个问题仍然不错,因为它比所引用的问题更具“一般性”,也因为它提到了Android Studio的升级。截至2018年4月,我刚刚将其升级到版本3.1.2,突然开始出现此问题。
发光

9
我不明白为什么我们要在这类问题上浪费这么多时间。Android团队...只要解决它!
r3dm4n

Answers:


371

将您的网络的DNS地址更改为8.8.8.8(Google的DNS)或您的首选项:

MacOSX:
  • 打开“系统偏好设置”
  • 点击“网络”
  • 选择您的计算机所连接的网络,然后单击“高级”
  • 选择“ DNS”,选择“ +”按钮,键入“ 8.8.8.8”(Google的DNS),或者如果您更喜欢OpenDNS,则输入“ 208.67.222.222”
  • 选择“确定”和“应用”

Windows和Linux:

https://developers.google.com/speed/public-dns/docs/using


之后,关闭模拟器并重新启动。


我必须按照以下Windows指南进行操作:developers.google.com/speed/public-dns/docs/using,但它也对我有用。我猜出于某种原因,我的家庭网络没有为模拟器正确设置。
Chud37

10
如果您不希望DNS流量通过Google,请改用OpenDNS设置。208.67.222.222和208.67.220.220
贾斯汀·诺埃尔

5
我做了同样的事情,但是后来不得不重新启动模拟器才能使它工作,尽管感谢技巧!
史蒂芬·埃利奥特

30
将所有主机系统的DNS流量路由到Google,这是一个答案-.-
fl034

2
您也可以代替“强行强制”整个计算机使用新的DNS服务器(然后默认情况下让仿真器继承这些更改),而只需更改仿真器的DNS设置。有很多方法可以使用。有关此处提供的各种选项的更多详细信息:stackoverflow.com/questions/2039964/…–
trcarden

201

在尝试了许多这些解决方案之后,我将只删除当前的AVD并重新创建它,但是当我单击AVD上的向下箭头时,我注意到“立即启动”。

AVD菜单

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

编辑:好的,对于那些说为什么不删除数据然后重新启动的人。每次重新启动PC时都重新格式化吗?在模拟器上擦除数据就像将手机恢复出厂设置,或者在PC上重新格式化硬盘驱动器并重新安装操作系统一样。除非数据完全损坏,否则没有必要。

当您关闭仿真器并重新启动它时,就像将PC置于休眠或睡眠模式一样。不会擦除内存,而是将其保存。

冷启动与重新启动手机或重新启动PC相同。它重置内存并重新加载内容。这允许网络仿真从干净的内存开始并正确连接。

因此,请勿擦除您的数据。只是冷启动。如果仍然无法使用,请擦拭,但将其保存为万不得已的方法。


8
从有线切换为wifi后,这为我解决了问题
Lucas

3
同样对我有用,面临着在不同网络适配器之间切换的相同问题。问题似乎是仿真器仍然以某种方式连接到先前的连接配置,因此当仿真器以冷启动方式启动时,现在网络配置将重新启动,并且一切将重新开始工作。感谢分享 ;)!!
Gueorgui Obregon,

1
工作良好!但为什么?
ucMedia '19

1
每次重启时,您都会擦手机吗?这就是模拟器上的冷启动,即冷重启。就像关闭手机然后重新打开一样。除非仍然存在问题,否则无需在冷启动后擦除仿真器中的数据。
蒂莫西·温特斯

这对我有用..我尝试了不同的代理,尝试了重新启动,创建了不同的AVD ..不知道为什么这可以..但是可以.. !!
Swapnil Kale

122

我在升级到SDK 2.3的旧堆栈溢出线程上找到了一个临时解决方案-现在没有仿真器具有连接性。请注意,该线程仅讨论Android SDK 2.3,而不是Android Studio 2.3。问题似乎是模拟器无法找到我的计算机当前正在使用的DNS,临时解决方法是从命令行启动模拟器并指定DNS服务器。无论发生什么问题,都必须在最新版本的Android Studio中重新出现。

下面概述的临时解决方案解决了仿真器访问Internet的问题。但是,它不能解决尝试运行Android Device Monitor时发生的问题。这样做仍然会使仿真器如上所述脱机。

请注意,sdk中有两个名为“ emulator.exe”的文件-一个在sdk \ tools下,另一个在sdk \ emulator下。两种方法都可能在下面工作,但是我在sdk \ emulator下使用了一种。

第一步是找到SDK的位置。假设用户名为“ jdoe”,并且在Windows上默认安装了Android Studio,则该SDK最有可能位于

C:\Users\jdoe\AppData\Local\Android\sdk

第二步是确定要运行的AVD(仿真器)的名称。命令

C:\Users\jdoe\AppData\Local\Android\sdk\emulator\emulator.exe -list-avds

将显示您的AVD的名称。在我的计算机上,它仅显示一个Nexus_5X_API_25。

要使用指定的DNS服务器从命令行启动仿真器,请使用类似以下内容的代码:

C:\Users\jdoe\AppData\Local\Android\sdk\emulator\emulator.exe -avd Nexus_5X_API_25 -dns-server 8.8.8.8

在这种情况下,8.8.8.8是Google的公共域名服务器。

如果您创建适当的环境变量并编辑PATH环境变量,则可以缩短上述命令,但是我建议您谨慎行事。


这绝对对我有用,但是我希望有一种方法可以在命令行外部清理DNS。
JaviCasa

在为Windows Pro支付199美元的许可以获取Hyer-V之后,并且发现Visual Studio模拟器不支持google_api_services之后,我发现了使Android模拟器能够连接互联网的解决方案……
Monah

2
这完全可以,但是令人难以置信的是,Android Studio 3.0(仿真器27.1.12)仍然存在问题。可能与禁用无线功能的系统中同时具有有线和无线网络适配器有关?
维克多·伦迪纳

我向Google提交了一个错误,希望他们在这里查看评论,并解决所有潜在问题。
爪子'18

@paws您可以链接已提交的错误吗?还要给它加注星!
阿米塔夫克

56

更新我的WIFI适配器以解析8.8.8.8上的DNS为我解决了此问题。它是在Apple更新后弄乱了DNS地址后开始发生的。

在此处输入图片说明


13
正如Ana Paula所建议的,不要忘记在进行此更改后重新启动模拟器。
约旦

1
请参阅上面有关使用OpenDNS而不是Google的评论。 stackoverflow.com/questions/42736038/…–
贾斯汀·诺埃尔

不必是8.8.8.8或OpenDNS,任何正常运行的DNS服务器都可以工作
sudo

29

只需打开AVD Manager,然后擦除该模拟器对我有用的数据即可。


1
必须缓存旧的wifi连接,因为我移到了另一个wifi位置,此问题开始发生。我擦除了AVD并重新启动,然后它在新位置拾取了wifi。
迈克·弗林

26

升级后,我遇到了同样的问题。在模拟器中打开Chrome浏览器后,就无法再访问google.com。

在SO上找到了一篇帖子,表明问题出在模拟器尝试使用断开连接的网络适配器的过程中。对我来说,问题是当我连接到局域网时发生的。禁用无线局域网适配器可解决此问题。

要禁用适配器:

  1. 导航到网络连接
  2. 查找适配器
  3. 右键单击并选择禁用

2
谢谢你的提示。我开始怀疑这样的事情,因为我注意到通过有线LAN适配器进行连接也可以解决问题。还可以通过更改两个适配器的优先级来解决此问题,但是任何一种方法似乎都是解决之道。为什么Google不能简单地修复仿真器以使用计算机正在使用的连接。正如我所说,在升级到Android Studio 2.3之前,这不是问题。现在,我将继续使用其他指定DNS服务器的解决方案。
John Moore

谢谢。我有局域网和无线适配器。禁用无线适配器后可以工作。
Plugie

究竟!我已经关闭了除WiFi适配器以外的所有PC网络适配器,并且可以正常工作。谢谢。
Alexander.Iljushkin

21

打开Android模拟器,然后转到扩展控件。然后转到设置=> proxy(Tab),然后取消选中“使用Android studuio HTTP代理设置”。


另一方面,我不得不再次检查以使互联网正常工作。:(
Sankalp

就像是一种魅力,但必须重新启动模拟器才能使用该设置。
u84six

15

我已经解决了从AVD Manager清除数据的问题


2
这个对我有用。我的情况是我使用带API 22的模拟器。在“擦除数据”和“立即冷启动”之后,互联网连接可以正常工作,但是我必须重新安装该应用程序。
Akostha

13

当仿真器冻结时,这发生在我身上,我不得不终止该过程。如屏幕截图所示,信号图标始终显示小“ x”,并且没有互联网连接成功。

唯一有帮助的是卸载并重新安装了模拟器(不是AVD映像)

在Android Studio中:

工具-> Android-> SDK Manager取消选中“ Android Emulator”,然后将其卸载,然后再次检查并重新安装。

屏幕截图


2
有完全相同的问题,这样做了,问题没有解决。但是,重新启动整个计算机后,Internet现在可以在模拟器上运行了。
antogerva '17

它对我有用,我的处境..重新安装android studio我使用了旧的SDK文件
AGTHAMAYS

2
这是唯一对我
有用的

必须同意这是唯一在Mac上也可以使用的解决方案!
Anoop Santhanam

13

我也面临着同样的问题,但是我试图通过各种帖子来解决这个问题。今天我发现了这个问题。您的计算机配置很可能是问题所在,而不是Android Studio和Android模拟器。

问题来自您的网络设置。只需将主DNS服务器设置为8.8.8.8,即可解决此问题。


8

提醒:如果您打开计算机上的VPN系统,则Android Emulator互联网连接将无法正常工作


8

[更新2020]适用于Mac用户

  1. 系统偏好设定
  2. 网络
  3. WiFi>选择高级
  4. 从高级选择DNC选项卡
  5. 添加了DNS服务器8.8.8.8

和你做完了


7

上次仿真器自我更新,然后又禁用其他网络适配器对其进行了修复,这对我来说是个问题。现在,它又出现了,但是唯一启用的适配器是单个wifi适配器,因此我没有什么可以禁用的。

仅在通过提示将仿真器工具更新为26.1.1之后,该问题才再次出现。我通过SDK工具的“更新”选项卡卸载并重新安装了模拟器,但值得庆幸的是,现在再次安装时,唯一的选择是安装26.0.3(似乎可以正常运行)。

这个故事的寓意是要非常警惕模拟器更新


为我工作,具有完全相同的版本,并在卸载后重新安装了26.0.3。
Sammy Patenotte

这个解决方案也对我有用!我必须从Android Studio 2.3安装26.0.3。不过(3.0预览版仅显示26.1.1。)。非常感谢!
阿提拉莫尔纳尔

6

对我来说,问题是当我将笔记本电脑带回家而没有重新启动模拟器时引起的。根据我的阅读,当模拟器启动时,它将读取您的PC的DNS设置并使用它们。当我在家庭网络中时,我的工作DNS设置失败。
嗯是的。只是重新启动模拟器解决了我的问题。


6

我在Windows中得到了一个简单而永久的解决方案。

转到网络和互联网选项->在此处输入图片说明

单击Etherenetwifi(您已连接的wifi)选项-> 在此处输入图片说明

单击更改适配器选项 -> 在此处输入图片说明

右键单击您已连接的网络。 在此处输入图片说明

将打开一个对话框,只需单击Internet协议版本(TCP / IPv4)选项。 在此处输入图片说明

将打开另一个对话框,而忽略第一组有关IP地址的设置(保留设置),然后单击“ 使用以下DNS服务器地址:”的单选按钮,然后在“ 首选DNS服务器”中输入8.8.8.8 和8.8。 4.4在备用DNS服务器中: 在此处输入图片说明

现在,您可以随时打开模拟器,并且可以在android模拟器中获得互联网。


没有其他解决方案对我有用,但是这个解决方案有效!提一下:我使用的是LAN电缆,所以我在此设置(而不是Wifi连接)上进行了更改。
Zbarcea Christian

6

关闭模拟器并重新打开对我有用

操作系统 WINDOWS 10


1
那对我有用。我已经尝试过重新启动虚拟电话,但这还不够。通过允许正在运行的仿真器进入休眠状态可能触发了此问题。谢谢。
阿列克谢

3

经过10天的麻烦,我只是删除了所有内容,C:\Android\.android\并删除了所有创建的AVD。现在,互联网似乎工作正常。


3

如果Android浏览器可以访问互联网,则可以通过此命令从终端运行模拟器

然后转到SDK路径

$ / tools / emulator -avd Nexus_5X_API_23 -netdelay none -n​​etspeed full

它解决了您的互联网问题...


3

我在android studio 3.1上,它发生了。通过重新启动adb服务器来解决它

$ adb kill-server
$ adb start-server

希望能帮助到你。谢谢


3

我也有一个问题,通过在Android Studio设置中禁用代理,然后使用“立即启动冷启动”运行模拟器,问题得以解决。


2

只是使用另一个目标API重新创建模拟器对我来说是可行的


2

也许您为Android Studio设置了代理,但该代理不起作用。尝试不使用代理。


2

我遇到了同样的问题,并按以下步骤解决了:

转到模拟器设置,然后转到

设置->代理->手动配置,或使用Tick使用Android Studio HTTP代理模拟器。


2

我正在使用Visual Studio 2017,只需单击几下即可解决Android模拟器的互联网问题。

在此处输入图片说明


1

我在MAC上遇到了非常突然的同样问题。经过一切尝试之后,我终于删除了 /Users/Philippe/.android 文件夹创建了一个新的模拟器


1

对我来说,在OSX上是因为使用了第三方VPN解决方案...它安装了某种AVD和Genymotion无法通过的网络挂钩。必须卸载它才能正常工作。在某些网络上工作正常,而在另一些网络上工作不正常。


1

我在Windows 10上也遇到了同样的问题Network & internet settings> Change adapter options> right-click on Wi-Fi and chose properties> Chose Internet protocol version 4 in the list and clicked properties> Turned on the "Use the following DNS server addresses" and filled the first part with "8.8.8.8" address。问题解决了!


1

如果您在代理后面,则以下内容可能会有用:

adb shell settings put global global_http_proxy_port YOUR_PROXY_PORT

adb shell settings put global global_http_proxy_host YOUR_PROXY_IP

reboot

1

请通过以下链接。

https://developer.android.com/studio/run/emulator-networking

打开仿真器,单击“更多...”,然后单击“设置和代理”。在这里,您可以定义自己的HTTP代理设置。


通过遵循运行> cmd>主机名输入主机

最后,通过在chrome或google中浏览来检查模拟器中的互联网访问。

注意:通常,擦除数据会清除问题。请遵循所有步骤


0

我也有这个,我通过创建新的Android模拟器虚拟设备并选择了Nexus 4 API 27来解决了该问题。在我创建Pixel设备API 28之前,即使在重新创建设备后它也无法正常工作。因此,我尝试了完全不同的配置,并且Android Emulator可以按预期连接互联网。其他解决方案对我不起作用,但我没有尝试全部。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.