Android模拟器无法访问互联网

时间:2017-03-11 13:53:07

标签: android emulation android-studio-3.0

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

51 个答案:

答案 0 :(得分:144)

将网络的DNS地址更改为8.8.8.8:

MacOSX的:
  • 打开“系统偏好设置”
  • 点击“网络”
  • 选择计算机所连接的网络,然后单击“高级”
  • 选择“DNS”,选择“+”按钮,输入“8.8.8.8”
  • 选择“确定”和“应用”


Windows& Linux操作系统:

implode()


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

答案 1 :(得分:90)

我在Upgraded to SDK 2.3 - now no emulators have connectivity的旧Stack Overflow线程上找到了一个临时解决方案。请注意,此主题讨论Android SDK 2.3,而不是Android Studio 2.3。问题似乎是模拟器找不到我的计算机当前正在使用的DNS,临时解决方法是从命令行启动模拟器并指定DNS服务器。无论发生什么问题,都必须在最新版本的Android Studio中重新出现。

下面概述的临时解决方案解决了模拟器访问互联网的问题。但是,它不能解决尝试运行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环境变量,则可以缩短上述命令,但我建议您这样做时要小心。

答案 2 :(得分:56)

尝试了很多这样的解决方案后,我只是删除了我当前的AVD并重新制作,但是当我点击AVD上的向下箭头时,我注意到了#34;现在冷启动"。

AVD Menu

我一时兴起,试着这样做。瞧,我的模拟器再次有互联网连接!

答案 3 :(得分:42)

更新我的WIFI适配器以解析8.8.8.8上的DNS解决了我的问题。它发生在苹果更新后,它搞砸了DNS地址。

enter image description here

答案 4 :(得分:38)

[UPDATE 2020] (适用于Mac用户)

  1. 系统偏好设置
  2. 网络
  3. WiFi>选择高级
  4. 从“高级”中,选择“ DNS”标签
  5. 添加DNS服务器8.8.8.8

答案 5 :(得分:23)

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

我发现post on SO表示问题在于模拟器试图使用断开连接的网络适配器。对我来说,当我连接到局域网时,问题就出现了。禁用无线LAN适配器可解决此问题。

要禁用适配器:

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

答案 6 :(得分:14)

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

答案 7 :(得分:12)

我也遇到了同样的问题,但我试图用各种帖子解决问题。今天我发现了这个问题。您的计算机配置很可能是问题,而不是Android Studio和Android Emulator。

问题来自您的网络设置。只需set the Primary DNS Server到8.8.8.8,这将解决问题。

答案 8 :(得分:10)

当模拟器冻结并且我不得不杀死进程时,这发生在我身上。信号图标总是显示屏幕截图中的小“x”,没有互联网连接成功。

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

在Android Studio中:

  

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

Screenshot

答案 9 :(得分:8)

打开Android模拟器并转到扩展控件。然后转到setting =>代理(Tab)和未选中"使用Android studuio HTTP代理设置"。

答案 10 :(得分:7)

这对我来说是一个问题,上次模拟器自我更新,然后禁用其他网络适配器修复它。现在它再次出现,但唯一启用的适配器是单个wifi,所以我没有什么可以禁用。

在我通过提示将模拟器工具更新到26.1.1后,问题才重新出现。我通过SDK Tools更新选项卡卸载并重新安装了模拟器,并且谢天谢地现在再次安装时唯一的选择就是安装26.0.3(这似乎工作正常)。

故事的道德是对模拟器更新非常警惕

答案 11 :(得分:6)

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

答案 12 :(得分:4)

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

答案 13 :(得分:4)

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

转到 SDK 路径

  

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

它解决了你的网络问题...

答案 14 :(得分:4)

我可以在关闭并打开 android 配置上的 wifi 后使其工作

Turn on and off wifi

答案 15 :(得分:3)

请通过以下链接。

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

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


按照以下步骤输入主机名 运行> cmd>主机名

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

注意:通常擦除数据可以清除问题。请按照所有步骤操作

答案 16 :(得分:3)

在我从家到咖啡馆的时候保持模拟器开机后,我遇到了这个问题。 “立即冷启动”解决了该问题。

答案 17 :(得分:3)

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

答案 18 :(得分:3)

提醒:如果您打开计算机上的 VPN 系统,则Android Emulator Internet连接将不起作用

答案 19 :(得分:2)

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

$ adb kill-server
$ adb start-server

希望它有所帮助。谢谢

答案 20 :(得分:2)

  1. 第一:开飞机模式。
  2. second:连接到模拟器wifi。

答案 21 :(得分:2)

只需使用另一个为我工作的目标API重新创建模拟器

答案 22 :(得分:1)

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

enter image description here

答案 23 :(得分: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。 问题解决了!

答案 24 :(得分:1)

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

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

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

答案 25 :(得分:1)

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

操作系统 WINDOWS 10

答案 26 :(得分:1)

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

转到网络和互联网选项-> enter image description here

点击以太网 wifi (已连接)-> enter image description here

点击更改适配器选项-> enter image description here

右键单击您已连接的网络。 enter image description here

将打开一个对话框,只需单击 Internet协议版本(TCP / IPv4)选项。 enter image description here

将打开另一个对话框,而忽略第一组有关IP地址的设置(保留设置),然后单击使用以下DNS服务器地址的单选按钮:,并输入8.8 首选DNS服务器中的.8.8和备用DNS服务器中的8.8.4.4: enter image description here

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

答案 27 :(得分:1)

macOS:长话短说。.确保您的DNS设置8.8.8.8是第一个,清除数据并进行冷启动。

enter image description here

答案 28 :(得分:1)

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

答案 29 :(得分:0)

需要打开“移动数据”设置。冷启动没有用,但是我打开移动数据后就可以使用

答案 30 :(得分:0)

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

这对我有用

答案 31 :(得分:0)

在具有Jio IP6配置问题的最新Mac上,它在android模拟器上阻止了Internet,因此从Android Virtual Device Manager模拟器列表的“操作”列下拉列表中选择选项“ Cold Boot Now”解决了该问题。它对我有用。

答案 32 :(得分:0)

只需转到AVD经理和Cold Boot现在为我工作

答案 33 :(得分:0)

我观察到的是,当您在 android 模拟器运行时切换 wifi 连接。无法连接到新的 wifi。

一个简单的解决方案是重启安卓模拟器。

答案 34 :(得分:0)

我知道这很老了。但这对我有所帮助。我在Xamarin.Forms应用程序中遇到了相同的问题。我的模拟器无法连接到公共api。

我通过在Android设备管理器中使用工厂默认值启动模拟器来解决此问题。

enter image description here

答案 35 :(得分:0)

如果您的网络上有 PiHole,请确保您的 Pi 正在运行,并且您可以访问 PiHole 的网络用户界面。每一次,当我的模拟器突然无法连接到互联网时,都是因为其中任何一个出现问题。

答案 36 :(得分:0)

对我来说,问题是我的计算机已连接到VPN。一旦断开连接,它便开始在模拟器中工作。

答案 37 :(得分:0)

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

答案 38 :(得分:0)

如果您是代理人,则可能有用:

    public UserResource (){
     urh = new UserResourceHelper();
    }

答案 39 :(得分:0)

就我而言,它是Charles代理应用程序。即使关闭该应用程序,模拟器仍然无法访问互联网。需要停止在Charles中收听网络。

答案 40 :(得分:0)

使用Android 9+的模拟器适用于我,但Android 7无法连接到互联网。

我的办公室使用Little Snitch应用程序防火墙。我将其关闭,Android 7正常运行。检查防火墙可能是个好主意。

答案 41 :(得分:0)

android emulator V 7.1.1 中的 Network Connectivity 问题,然后我将 Android版本降低到 7.1以下.1 在我的 Android模拟器中,然后正常工作。

答案 42 :(得分:0)

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

答案 43 :(得分:0)

专业提示:在Linux上将AVD与dnsmasq结合使用

要了解您的内容,请阅读从Android Studio中的设置Android仿真器网络

模拟设备的环回为http://...,可以从127.0.0.1从模拟设备访问主机环回。

启动时,仿真设备通过从10.0.2.2中的主机中选择DNS域名服务器来设置其DNS域名服务器。

但是,要点是,如果您使用的是dnsmasq /etc/resolv.conf名称服务器127.0.0.1 , you set / etc / resolv.conf`,那么模拟设备将遇到它自己的环回,其中没有任何运行而不是运行主机环回,其中正在运行DNS服务器。

要解决此问题,请从CLI运行AVD时添加in

例如:

  • Cloudflare DNS:-dns-server
  • 主机的dnsmasq:~/Android/Sdk/emulator/emulator -avd Nexus_9_API_23 -dns-server 1.1.1.1

答案 44 :(得分:0)

我的模拟器遇到了同样的问题,上面的所有操作都没有,但是没有任何效果。 更改我的默认网关 控制面板->网络和共享中心->本地连接设置,来自: 192.168.1.119到192.168.1.1从我这里工作。 我对这个IP地址的工作方式并不了解,但是也许可以节省一个人的时间和沮丧。

答案 45 :(得分:0)

也许您为Android Studio设置了代理,但代理无效。尝试不用代理。

答案 46 :(得分:0)

我也有这个,我通过创建新的Android模拟器虚拟设备并选择了Nexus 4 api 27来解决它。在我创建Pixel设备api 28之前,它甚至在重新创建设备后仍无法正常工作。所以我尝试了完全不同的配置,Android Emulator有预期的互联网连接。其他解决方案对我没有用,但我没有尝试过。

答案 47 :(得分:-1)

冷启动选项对我有用

答案 48 :(得分:-2)

转到您的适配器设置,然后将dns更改为Google的8.8.8.8,它将对我有用

答案 49 :(得分:-2)

我在8或9天后解决了这个问题。只需卸载android模拟器SDK(从SDK管理器中),然后重新安装android模拟器SDK。在8或9天内,我尝试过:

1.new windows setup
2.uninstall and install android studio
3.change windows sharing setting
4.change DNS server addresses
5.delete and create some AVDs
6.delete .android folder and create new one etc.

答案 50 :(得分:-2)

最后,我不得不删除.android文件夹并创建新文件夹。似乎文件已损坏