Flutter应用Firebase实时数据库无法发送数据,遇区域不匹配报错求助
解决Firebase实时数据库区域不匹配导致的连接失败问题
问题原因
你的Flutter应用连接的Firebase实时数据库URL和实际创建的数据库区域不匹配,服务器因此强制断开连接。
解决步骤
修改项目Firebase配置文件
- 如果是用FlutterFire CLI生成的配置,找到项目中的
firebase_options.dart文件,将databaseURL字段的值替换为报错提示的URL:https://jonk-amit-default-rtdb.asia-southeast1.firebasedatabase.app - 针对原生平台配置:
- Android:打开
android/app/google-services.json,找到project_info节点下的database_url,替换为目标URL - iOS:打开
ios/Runner/GoogleService-Info.plist,找到DATABASE_URL键,修改对应的值为目标URL
- Android:打开
- 如果是用FlutterFire CLI生成的配置,找到项目中的
确保数据库实例使用正确URL
如果你在代码中手动初始化数据库实例,直接使用指定URL创建:final database = FirebaseDatabase.instance.refFromURL("https://jonk-amit-default-rtdb.asia-southeast1.firebasedatabase.app");若使用默认实例,配置文件更新后直接调用
FirebaseDatabase.instance即可。验证修复效果
重启Flutter应用,尝试重新发送数据,若不再出现区域不匹配的报错,说明配置已生效。
内容的提问来源于stack exchange,提问作者Amit Kumar Singh
相关产品推荐
相关产品推荐

