【问题标题】:Android emulator not able to access the internet安卓模拟器无法上网
【发布时间】:2017-08-01 20:10:02
【问题描述】:

我知道以前也有人问过类似的问题,但是我的问题是在安装了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”时的模拟器图像。

【问题讨论】:

  • 我发现 Android Studio 2.3 的另一个问题与互联网访问无关,但可能与上述问题有关。随着 Android Studio 打开一个项目并运行一个模拟器,我可以在模拟器上运行该应用程序。但是如果我打开 Android Device Monitor,它会告诉我模拟器离线。然后,如果我关闭 Android Device Monitor 并返回 Android Studio,它还会告诉我模拟器离线。我必须关闭并重新启动模拟器,然后 Android Studio 才能再次找到它。这个问题和上面的一样,是可以重复的。
  • 另一个更新。我在另一台较旧/较慢的 Windows 10 计算机上安装了 Android Studio 2.3,但问题仍然存在。此外,有一次我认为问题可能与错误的 Microsoft WPD 补丁有关,但旧电脑没有安装补丁。另外,经过几次不成功的尝试,我能够从我的主计算机上删除坏补丁,但仍然没有成功让 Chrome 在模拟器上运行。在这一点上,我更加确定问题出在 Android Studio 2.3 上。
  • 我认为这个问题还是不错的,因为它比引用的问题更“笼统”,也因为它提到了Android Studio的升级。截至2018年4月,我刚刚升级到3.1.2版本,突然开始出现这个问题。
  • 我不明白我们为什么要在这类问题上浪费这么多时间。 Android 团队...修复它!
  • 我删除了模拟器设备并重新启动了一个新设备,解决了。我花了半天时间在这个问题上挣扎......我是个傻瓜。安卓团队,wtf,你比那强!!!

标签: android emulation android-studio-3.0


【解决方案1】:

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

【讨论】:

    【解决方案2】:
    1. 首先:打开飞行模式。
    2. 第二个:连接模拟器wifi。

    【讨论】:

    • 它对我的工作是在 android 10 x86 上设置飞行模式并禁用飞行模式
    【解决方案3】:

    不为整台机器使用自定义 DNS 的 MacOS 解决方案

    第一步

    在 Android SDK 中找到 Android Studio 正在使用的 emulator 可执行文件,并将其重命名为 emulator-original

    我的地址是/usr/local/share/android-sdk/emulator/emulator,但可能会因个人设置而异。

    第 2 步

    添加一个名为 emulator 的新文件来代替包含以下命令(或使用您选择的 DNS 服务器)的原始文件。

    #!/bin/bash
    $0-original "$@" -dns-server 8.8.8.8
    

    第三步

    使新的emulator 文件可执行。

    chmod +x emulator
    

    第四步

    使用 Android Studio 重启模拟器。

    【讨论】:

      【解决方案4】:

      尝试这些步骤一次,它们对我有用:

      1. 断开您的 PC 与互联网的连接
      2. 在断开连接时关闭模拟器
      3. 再次连接到互联网
      4. 终于再次启动你的模拟器

      【讨论】:

        【解决方案5】:

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

        【讨论】:

          【解决方案6】:

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

          【讨论】:

            【解决方案7】:

            对我来说,在 OSX 上,这是因为使用了 3rd 方 VPN 解决方案……它安装了某种 AVD 和 Genymotion 无法通过的网络挂钩。必须卸载它才能正常工作。在某些网络上运行良好,而在其他网络上运行良好......非常奇怪......

            【讨论】:

              【解决方案8】:

              我在 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。 问题解决了!

              【讨论】:

                【解决方案9】:

                如果您使用代理,以下可能有用:

                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
                

                【讨论】:

                  【解决方案10】:

                  设置 DNS 8.8.4.4 并运行 emulator -avd react-native-device -dns-server 8.8.4.4

                  这对我有用

                  【讨论】:

                    【解决方案11】:

                    需要开启移动数据设置。冷启动它没有用,但我打开移动数据后它工作了

                    【讨论】:

                    【解决方案12】:

                    在带有 Jio IP6 配置问题的最新 Mac 上,它会阻止 android 模拟器上的互联网,因此从 Android 虚拟设备管理器模拟器列表操作列下拉列表中选择“立即冷启动”选项修复了该问题。我在保持相同后遇到了这个问题它对我有用。

                    【讨论】:

                      【解决方案13】:

                      这些答案都不适合我。我可以通过下载金丝雀版本“android-studio-2021.1.1.8-mac_arm”来让它工作。之后不需要额外的步骤。

                      【讨论】:

                      • 我必须创建一个新的虚拟设备(基于 ARM),然后它才能工作。
                      【解决方案14】:

                      正如@osama buzdar 所指出的,the DNS settings the emulator looks first might be specified in /etc/resolv.conf。就我而言,从 macOS Catalina 10.15.7 开始,该文件中有两个地址:第一个是 IPv6,第二个是 IPv4,由于某种原因,模拟器可能在 IPv6 上遇到了问题。

                      然后我编辑了文件 (sudo vi /etc/resolv.conf) 并将 IPv4 移动到文件的第一个条目,在 IPv6 之前。重新启动模拟器,它工作。

                      【讨论】:

                      • 这个方案解决了,直到resolv.conf重新生成...
                      • 添加 -dns-server 8.8.8.8 或类似的东西作为额外的参数。例如在 Visual Studio 中,您可以为调用 AVD 提供额外的参数,这解决了很好。
                      【解决方案15】:

                      我的模拟器遇到了同样的问题,做了上面的一切,但没有任何效果。 更改我的默认网关 控制面板 -> 网络和共享中心 -> 本地连接设置: 192.168.1.119 到 192.168.1.1 从我这里工作。 我不太了解这个 IP 地址是如何工作的,但也许它会节省一些人的时间和挫败感。

                      【讨论】:

                        【解决方案16】:

                        我在 android emulator V 7.1.1 中遇到同样的 网络连接 问题,然后我将 Android 版本 降低到 7.1 以下.1 在我的 Android Emulator 中,然后它就可以正常工作了。

                        【讨论】:

                        • 如果您尝试打开 http 网站,可能需要在较新版本的 Android 上启用 http 流量:android:usesCleartextTraffic="true"
                        【解决方案17】:

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

                        我的办公室使用 Little Snitch 应用程序防火墙。我把它关掉了,Android 7 工作了。检查防火墙可能是个好主意。

                        【讨论】:

                          【解决方案18】:

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

                          【讨论】:

                            【解决方案19】:

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

                            我通过在 Android 设备管理器中使用出厂默认设置启动模拟器解决了这个问题。

                            【讨论】:

                              【解决方案20】:

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

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

                              【讨论】:

                                【解决方案21】:

                                如果您的网络上有 PiHole,请确保您的 Pi 正常工作并且您可以访问 PiHole 的 Web UI。每次,当我的模拟器突然无法连接互联网时,都是因为其中任何一个出现问题。

                                【讨论】:

                                  【解决方案22】:

                                  冷启动选项适合我

                                  【讨论】:

                                  【解决方案23】:

                                  Windows DNS 设置在所选网络连接的 TCP/IP 属性窗口中指定。

                                  示例:在 Windows 10 上更改 DNS 服务器设置

                                  转到控制面板。 单击网络和 Internet > 网络和共享中心 > 更改适配器设置。 选择您要为其配置 Google 公共 DNS 的连接。例如:

                                  要更改以太网连接的设置,请右键单击以太网接口并选择属性。 要更改无线连接的设置,请右键单击 Wi-Fi 接口并选择属性。 如果系统提示您输入管理员密码或确认,请输入密码或提供确认。

                                  选择网络选项卡。在此连接使用以下项目下,选择 Internet 协议版本 4 (TCP/IPv4) 或 Internet 协议版本 6 (TCP/IPv6),然后单击属性。

                                  单击高级并选择 DNS 选项卡。如果那里列出了任何 DNS 服务器 IP 地址,请将它们写下来以供将来参考,然后从该窗口中删除它们。

                                  点击确定。

                                  选择使用以下 DNS 服务器地址。如果首选 DNS 服务器或备用 DNS 服务器中列出了任何 IP 地址,请将其记录下来以备将来参考。

                                  将这些地址替换为 Google DNS 服务器的 IP 地址:

                                  对于 IPv4:8.8.8.8 和/或 8.8.4.4。 对于 IPv6:2001:4860:4860::8888 和/或 2001:4860:4860::8844。 仅限 IPv6:您可以使用 Google Public DNS64 代替上一点中的 IPv6 地址。 测试您的设置是否正常工作;请参阅测试您的新设置。

                                  对要更改的其他网络连接重复该过程。

                                  ma​​cOS DNS 设置在“网络”窗口中指定。

                                  示例:在 macOS 10.15 上更改 DNS 服务器设置

                                  单击 Apple 菜单 > 系统偏好设置 > 网络。 如果窗口左下角的锁定图标已锁定,请单击该图标进行更改,并在提示进行身份验证时输入您的密码。 选择您要为其配置 Google 公共 DNS 的连接。例如: 要更改 Wi-Fi 连接的设置,请选择 Wi-Fi,然后单击高级。 要更改以太网连接的设置,请选择内置以太网,然后单击高级。 选择 DNS 选项卡。 单击 + 将任何列出的地址替换为或添加列表顶部的 Google IP 地址: 对于 IPv4:8.8.8.8 和/或 8.8.4.4。 对于 IPv6:2001:4860:4860::8888 和/或 2001:4860:4860::8844。 仅限 IPv6:您可以使用 Google Public DNS64 代替上一点中的 IPv6 地址。 单击确定 > 应用。 测试您的设置是否正常工作;请参阅测试您的新设置。 对要更改的其他网络连接重复此过程。

                                  Linux 在大多数现代 Linux 发行版中,DNS 设置是通过网络管理器配置的。

                                  示例:在 Ubuntu 上更改 DNS 服务器设置

                                  单击系统 > 首选项 > 网络连接。 选择您要为其配置 Google 公共 DNS 的连接。例如: 要更改以太网连接的设置,请选择有线选项卡,然后在列表中选择您的网络接口。它通常称为 eth0。 要更改无线连接的设置,请选择无线选项卡,然后选择适当的无线网络。 单击编辑,然后在出现的窗口中选择 IPv4 设置或 IPv6 设置选项卡。 如果选择的方法是自动 (DHCP),请打开下拉列表并选择仅自动 (DHCP) 地址。如果方法设置为其他值,请不要更改它。 在 DNS 服务器字段中,输入 Google 公共 DNS IP 地址,以逗号分隔: 对于 IPv4:8.8.8.8 和/或 8.8.4.4。 对于 IPv6:2001:4860:4860::8888 和/或 2001:4860:4860::8844。 仅限 IPv6:您可以使用 Google Public DNS64 代替上一点中的 IPv6 地址。 单击应用以保存更改。如果系统提示您输入密码或确认,请键入密码或提供确认。 测试您的设置是否正常工作;请参阅测试您的新设置。 对要更改的其他网络连接重复此过程。 如果您的发行版不使用网络管理器,则您的 DNS 设置在 /etc/resolv.conf 中指定。

                                  示例:更改 Debian 服务器上的 DNS 服务器设置 编辑 /etc/resolv.conf:

                                  sudo vi /etc/resolv.conf
                                  

                                  如果出现任何名称服务器行,请记下 IP 地址以供将来参考。

                                  将名称服务器行替换为或添加以下行:

                                  对于 IPv4:

                                  nameserver 8.8.8.8
                                  nameserver 8.8.4.4
                                  

                                  对于 IPv6:

                                  nameserver 2001:4860:4860::8888
                                  nameserver 2001:4860:4860::8844
                                  

                                  对于仅限 IPv6,您可以使用 Google Public DNS64 代替上述 IPv6 地址。

                                  保存并退出。

                                  重新启动您正在使用的所有 Internet 客户端。

                                  测试您的设置是否正常工作;请参阅测试您的新设置。

                                  【讨论】:

                                    【解决方案24】:

                                    适用于 Apple MacBook M1 用户

                                    截至 2022 年 2 月 1 日的工作

                                    1. 打开 Android 模拟器
                                    2. 转到扩展控件
                                    3. 然后进入proxy(Tab)下的设置,
                                    4. 取消选中 Use Android studio HTTP proxy setting
                                    5. 点击应用
                                    6. 重新启动 / 冷启动您的模拟器。

                                    这应该可以解决您的模拟器上的互联网连接问题。

                                    【讨论】:

                                      【解决方案25】:

                                      1-设置无代理

                                      2-无效缓存

                                      3-删除旧模拟器并添加新模拟器

                                      【讨论】:

                                        【解决方案26】:

                                        在过去的 8 小时里,我一直遇到这个问题,正在想办法解决它。这发生在我家停电之后。我的模拟器不再连接到我的电脑的互联网。我在这里尝试了所有解决方案。将 DNS 更改为 8.8.8.8 有效,但我不想通过 google 路由所有流量。

                                        最终奏效的是。我知道这很疯狂,但拔掉了我的 wifi 路由器/调制解调器。快速拔出并重新插入即可解决此问题。我在这个 SO 问题和其他 5 个问题上尝试了一切。我什至重新下载了 Android Studio 和模拟器。都没有奏效。尝试拔下您的路由器/调制解调器。

                                        【讨论】:

                                          【解决方案27】:

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

                                          【讨论】:

                                            【解决方案28】:

                                            我在 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.
                                            

                                            【讨论】:

                                            • 把笔记本电脑扔到海里
                                            • 或者去山里再也不写代码了。
                                            【解决方案29】:

                                            转到您的适配器设置并将 dns 更改为谷歌的 8.8.8.8,它会工作,它对我有用

                                            【讨论】:

                                            • 适配器设置在哪里?
                                            猜你喜欢
                                            • 2016-02-11
                                            • 1970-01-01
                                            • 1970-01-01
                                            • 2012-07-31
                                            • 2013-03-30
                                            • 2014-03-17
                                            • 2019-11-17
                                            相关资源
                                            最近更新 更多