Flutter GeoFire SetLocation挂起且不工作



我已经初始化Geofire并调用SetLocation,但数据没有出现在实时数据库中。我注意到,当调用setLocation方法时,代码的执行停止,但没有任何错误。

下面是代码;

Geofire.initialize("availableDrivers");
await Geofire.setLocation(currentFirebaseUser!.uid, currentPosition!.latitude, currentPosition.longitude);

我还在实时数据库中应用了这些规则。

在VS Code的调试控制台中,我得到以下两行;

I/TAG (8574): GeoFire.startI/TAG (8574): setLocation

我更改了数据库的默认位置,并且在调用实时数据库时必须使用databaseURL,我不知道这是否相关。

请协助。

我终于想通了。当我第一次在模拟器上运行应用程序时,我得到了下面的错误。我在之前使用的设备上没有注意到它,因为该应用程序已经安装在设备上。

Firebase数据库连接被服务器强制终止。不会尝试重新连接。原因:数据库位于不同的区域。请将数据库URL更改为https://delivery-swag-default-rtdb.europe-west1.firebasedatabase.app

我把实时数据库放在一个不是默认的位置。然后我用默认的位置设置将我的应用程序迁移到另一个项目。

在Flutter Geofire中可能有一个设置来设置数据库URL,但我找不到它,所以我选择迁移项目。

最新更新