我正在开发一个需要实时数据库的应用程序。 Firebase 在该应用程序上运行良好。实时数据库可通过 http post 和 get 访问,并导致 firebase 数据库在控制台上更新其数据。
问题是当我尝试使用库提供的颤振函数更改数据时。
final firebaseRef = FirebaseDatabase.instance.reference().child("Items");
firebaseRef.set("hi");
firebaseRef.once().then((DataSnapshot snapshot) {
print('Data : ${snapshot.value}');
});
当我尝试使用上述功能时,数据似乎可用,控制台打印数据:嗨,但当我在线查看时,它们没有出现在 firebase 控制台上。
感谢任何帮助,我找不到任何可以提供帮助的信息。我检查了我的设置 20 次,结果正确,欢迎提出任何建议。
答案 0 :(得分:1)
我在 Frank van Puffelen 的帮助下解决了这个问题,谢谢。 问题是 Firebase 实时数据库没有连接到应用程序,我得到的所有结果都被缓存在设备上。
如果您遇到类似问题,请使用本部分文档的帮助检查数据库是否已连接。 https://firebase.google.com/docs/database/android/offline-capabilities#section-connection-state
在我的情况下,它没有连接的原因是因为在中美洲以外的 flutter 上引用任何实时数据库时,您需要将在 firebase 控制台中找到的数据库的 url 放在您的代码中。因此:
final firebaseRef = FirebaseDatabase(
databaseURL:
"https://yourfirebaseproject.europe-west1.firebasedatabase.app/")
.reference()
.child("Items");
我希望这足以解决您的问题。