Flutter集成Firebase Auth遇network-request-failed错误求助
Flutter桌面端Firebase Auth创建用户报
network-request-failed的解决方案 1. 配置桌面端网络权限
你添加的AndroidManifest权限仅对Android平台生效,macOS桌面端需单独配置:
- 打开
macos/Runner/DebugProfile.entitlements和macos/Runner/Release.entitlements文件,添加以下内容:
<key>com.apple.security.network.client</key> <true/>
- 打开Xcode,选中Runner项目,进入
Signing & Capabilities标签,添加Outgoing Connections (Client)权限。
2. 确保Firebase适配桌面端
- 在
pubspec.yaml中添加桌面端Firebase依赖:
dependencies: firebase_core: ^2.15.0 firebase_core_desktop: ^1.0.0 firebase_auth: ^4.10.0 firebase_auth_desktop: ^1.2.0
- 初始化Firebase时指定当前平台配置:
await Firebase.initializeApp( options: DefaultFirebaseOptions.currentPlatform, );
确认firebase_options.dart已包含macOS平台的配置信息(可通过flutterfire configure命令重新生成)。
3. 排查本地网络环境
- 测试终端是否能访问Firebase域名:
curl https://firebase.googleapis.com/
- 暂时关闭代理、VPN或防火墙,确认是否存在网络拦截。
- 检查DNS设置,确保能正常解析Firebase相关域名。
4. 开启调试日志定位细节
在main.dart的初始化代码中添加日志开关,获取更详细的错误信息:
void main() async { WidgetsFlutterBinding.ensureInitialized(); FirebaseAuth.instance.setLoggingEnabled(true); await Firebase.initializeApp(options: DefaultFirebaseOptions.currentPlatform); runApp(const MyApp()); }
查看控制台输出,定位具体的网络失败原因(如DNS解析超时、连接被拒绝等)。
5. 清理缓存并重新构建
执行以下命令重置项目构建状态:
flutter clean flutter pub get flutter run -d macos
内容的提问来源于stack exchange,提问作者csstudent
相关产品推荐
相关产品推荐

