在CentOS下解决Flutter网络问题,需从系统配置、权限设置和代码层面排查,具体步骤如下:
检查CentOS网络配置
/etc/sysconfig/network-scripts/ifcfg-eth0,设置BOOTPROTO、IPADDR等参数,重启网络服务:sudo systemctl restart network
ping 8.8.8.8或ping your-server-ip。配置防火墙与SELinux
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload
/etc/selinux/config):sudo setenforce 0
设置Flutter网络权限
android/app/src/main/AndroidManifest.xml中添加:<uses-permission android:name="android.permission.INTERNET" />
Info.plist中添加网络权限配置(参考官方文档)。处理代码与依赖问题
pubspec.yaml中网络请求库(如http)版本正确,运行flutter pub get。import 'dart:io';
var client = HttpClient()
..badCertificateCallback = (X509Certificate cert, String host, int port) => true;
其他常见问题
/etc/resolv.conf,添加公共DNS(如8.8.8.8),或直接使用IP地址访问。http_proxy/https_proxy配置正确,或在Flutter中通过--dart-define传递代理参数。参考来源: