flutter doctor network resources 主要检查flutter开发工具运行过程中依赖的网络资源来源站是否可以正常访问,但国内通常都是无法访问的
下面介绍windows下的设置方法,如果你熟练使用mac或linux,通常会更自由,环境变量不会出现不识别的情况,参考本文档依旧可以完成配置
三大资源站分别是
- maven.google.com google的maven库资源站
- pub.dev dart和flutter的官方开放库资源站
- github.com 不用多说
解决maven.google.com 的问题
- 首先找到你的flutterSDK的位置(或许可以理解为flutter的安装路径)
- 使用支持多编码格式的文档编辑软件打开(例如VSCode):flutterSDK的位置\packages\flutter_tools\lib\src\http_host_validator.dart
- 修改内容:maven.google.com 修改为dl.google.com/dl/android/maven2
- 保存文档
- 删除:flutterSDK的位置\bin目录下的cache文件夹下的全部内容(可直接删除cache)
- 重新运行flutter doctor正常情况下既不会出现maven的资源问题
解决pub.dev 的问问题
windows请在图形窗口下设置全局环境变量值,既可解决pub.dev的问题,通常你可以在windows搜索框中搜索环境变量(version>win10),既可出现设置界面,本人建议设置系统环境变量,当然通常用户变量也是生效的
fluter中文社区源
SET FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn
SET PUB_HOSTED_URL=https://pub.flutter-io.cn
清华大学源
SET FLUTTER_STORAGE_BASE_URL=https://mirrors.tuna.tsinghua.edu.cn/flutter
SET PUB_HOSTED_URL=https://mirrors.tuna.tsinghua.edu.cn/dart-pub
解决github.com 的问题
首先如果你所在的地区或网络环境可以正常访问github服务的所有端口,那么祝你flutter体验愉快
如果不行,首先考虑使用指定DNS即HOST文件的方式,指向可以正常访问的github.com地址,可以去搜索一些IP138或站长工具网站中的DNS工具解析一下github.com的指向IP,找一些换一下,写入HOST文件,看看有的可以用。。。。但我这里不行所以
只能设置代理,为什么不一开始设置代理解决呢。。。这首先需要看你使用的软件,有的软件天然就解决了一切问题,但我的不行,大多数软件是无法劫持所有软件的http代理的,尤其是控制台
(请你不要再这个帖子下,问一些不应该问的问题,关于代理问题,本人不做任何解答,只解释为什么有的代理没生效)
这里需要生效的是HTTPS_PROXY这个变量,理论上设置代理可以解决所有网络问题
如果你使用的是VSCode你需要打开VSCode的settings.json文件,直接在VSCode界面上方的搜索中搜索settings.json打开就可以了
在json文件尾部最后一个}前加入(你应该需要懂json语法)
,
"terminal.integrated.env.windows": {
"http_proxy": "http://127.0.0.1:10001",
"https_proxy": "http://127.0.0.1:10001",
}
上方的127.0.0.1:10001只是一个虚构的代理地址,你应该找到你的代理地址,如果你找不到我也没办法,请不要在帖子下方问我
如果你使用的不是VSCode,建议你在Windows视窗界面设置系统环境变量HTTP_PROXY和HTTPS_PROXY,你的HTTPS_PROXY中的格式通常依旧写的是: http://your_address:your_part
windows下对于flutter来说,再控制台设置往往没有生效,至少我是这样,如果你仅想单次生效可以参考第二点中的cmd命令,可以设置临时环境变量,但这对我来说往往没有作用。
另外每次设置完系统环境变量需要完全重启vscode,重开一个控制台是不完美的(我不理解),
最后如果flutter doctor成功识别了你的代理,则会提示你NO_PROXY is not set,如果你没设置NO_PROXY,通常你无需在意这条提示。
好了本文就到这里,如果有问题的话,可以私信我,我再重申一下,请不要在本贴下方讨论一些关于代理的问题!