android studio 内置 模拟器 无法联网

事件起因

最近又开始做react-native项目,发现android studio自带的模拟器无法联网,百度了一下,解释的很牵强,只能寻求官方文档。
在android developer文档中有专门的对模拟器运行app的介绍,找到配置模拟器 DNS 设置这个标题。然后根据文档介绍即可。

  1. 直接修改dns: 根据文档描述,模拟器默认10.0.2.2网关是copy系统的dns地址。也就是读取系统中(linux ,macos)找到/etc/resolv.conf文件,可以手动添加8.8.8.8。
sudo vim /etc/resolv.conf
# resolv.conf
#
# This file is automatically generated.
#
nameserver 8.8.8.8
nameserver 192.168.33.10
nameserver 114.114.114.114

复制代码
    • **问题 ** 这种解决方法只能暂时生效,resolv.conf这个文件是系统自动生成的,需要从根本上解决这个问题。

      • 使用系统networksetup 工具

      • # 列出网络连接
        networksetup -listallnetworkservices
        #set Wifi
        networksetup -setdnsservers "Wi-Fi" 8.8.8.8 114.114.114.114
        # 清空DNS缓存
        dscacheutil -flushcache
        复制代码
      • 直接在系统偏好设置里修改

        iShot2022-03-22 14.55.30

  1. 修改模拟器启动参数: 也可以每次使用-dns-server <serverList> 命令行启动。进入sdk/emulator目录,./emulator -avd Pixel_XL_API_30 -dns-server 8.8.8.8
    但这种方式在android studio 内嵌的device manger 中不生效,单独开启的simulator生效,暂不清楚需不需要其他配置。
© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享