如何在React Native中使用Firebase实时数据库在本地保留数据?

时间:2019-08-28 09:17:51

标签: firebase react-native firebase-realtime-database react-native-android expo

我是移动开发的新手,我正在为React Android设备开发本机移动游戏,我希望在Firebase的实时数据库中存储以用户为中心的信息,例如不同级别的得分。我的用户将在受限的Internet连接中玩游戏(用户在几天内连接到互联网一次),我想要一种机制,即使应用程序“ RESTARTS”或该应用被用户杀死,以及Internet连接到来,应该能够将所有数据推送到服务器上。

我有两个问题:

  1. 在建立互联网连接后,我能否在不打开应用程序的情况下自动将数据发送到服务器?

  2. 我发现支持在Java和Kotlin中为Android重新启动应用程序或操作系统时启用离线数据持久性 (https://firebase.google.com/docs/database/android/offline-capabilities),但未找到对本机反应的支持。我已经阅读了React Native Firebase库(https://rnfirebase.io/docs/v5.x.x/database/reference/database)的文档,但是没有找到用于在应用程序/操作系统重启时启用数据持久性选项的选项。有什么解决方法吗?

1 个答案:

答案 0 :(得分:1)

您要寻找的是Cloud Firestore,它内置了数据持久性,因此您不必担心。为此,使用react-native-firebase,它具有绝对漂亮的文档和指南,社区也非常有帮助。

  1. 要在不打开用户应用程序的情况下将本地数据与服务器同步,则需要深入研究本机端,并制作一个在后台运行的Android Service,并定期检查Internet连接。互联网一旦连接,就可以开始Cloud Firestore同步。
  2. 请勿为此使用Realtime Database。使用Cloud Firestore会更好。