我尝试构建一个使用Firebases实时数据库的简单登录用户身份验证Android应用程序,但出现错误:
[Firebase数据库连接被服务器强制终止。将不会尝试重新连接。原因:数据库位于其他区域。请将数据库URL更改为https://vax-in-60807-default-rtdb.asia-southeast1.firebasedatabase.app]
我目前使用的是新加坡(asia-southeast 1)服务器,因为我住在菲律宾。这是错误的吗?或者我应该使用美国的服务器吗?我如何更改我的数据库URL?
5条答案
按热度按时间evrscar21#
看起来您使用的
google-services.json
文件不包含实时数据库URL,可能是因为您在创建数据库之前下载了它。在这种情况下,SDK假定数据库位于美国(原始地区),您会得到一个错误,指出存在不匹配。有两种可能的解决方案:
1.从Firebase控制台下载更新的
google-services.json
,并将其添加到您的Android应用程序中。1.请改为在代码中指定数据库URL,如下所示:
FirebaseDatabase.getInstance("https://vax-in-60807-default-rtdb.asia-southeast1.firebasedatabase.app")...
两种方法的结果相同,因此请选择您认为最简单的一种。
5jvtdoz22#
它仍然不工作后,接受的答案(如在我的情况)。如果是这样,尝试:
然后再运行一次。
dgjrabp23#
如果你是跟随新firebase doc的新Flutter用户,在终端运行此命令。它将自动更新firebase_options.dart文件。
u2nhd7ah4#
我也遇到了同样的问题,因为当你设置应用程序时,google-service.json不包含firebase_url。
这些问题在您手动配置设置时遇到,您可以使用flutterfire修复所有这些问题,它将帮助您很多,并在几个步骤中设置您的应用程序。请参阅docs firebase
hvvq6cgz5#
看起来您使用的google-services.json文件不包含实时数据库URL,可能是因为您在创建数据库之前下载了它。在这种情况下,SDK假定数据库位于美国(原始地区),您会得到一个错误,指出存在不匹配。
你可以用任何方法解决它。
1.配置数据库服务设置后,您必须下载新的“GoogleService-Info.plist”文件并替换以前的文件。
或
1.您可以在“GoogleService-Info.plist”文件中手动设置密钥
数据库URLasia-southeast1.firebasedatabase.app