如何将 firebase 与 android 房间本地数据库同步?
How to sync firebase with android room local db?
我有一个具有远程数据库 (firebase) 和本地数据库 (room) 的应用程序。我从 firebase 获取数据并将其保存在 android 房间中。另外,我使用 rxjava2 来做到这一点。所有帖子都是从本地数据库获取的。一切都很好,直到这里。当我将 new child 放入 firebase 时,它不会立即出现在我的应用程序中。它没有放在本地数据库中。我知道我必须每次都更新我的远程数据库,例如每六个小时一次。我做了一些研究来做到这一点。可以使用 Work Manager 和 JobScheduler,但我不知道如何使用。有没有人给我建议?
WorkManager 是 Jetpack 的一部分,是 Google 的一个库,它处理需要保证执行的可延迟工作。
你可以阅读这个blog to see if it covers your requirements. The documentation is an excellent starting point and there's a codelab that you can do to try the library itself available both in Java and Kotlin。
WorkManager 在 API Level 23+ 上运行时使用 JobScheduler,对于旧的 Android 版本(WorkManager 支持 API Level 14+)它使用 AlarmManager 和 Broadcast 接收器。
我有一个具有远程数据库 (firebase) 和本地数据库 (room) 的应用程序。我从 firebase 获取数据并将其保存在 android 房间中。另外,我使用 rxjava2 来做到这一点。所有帖子都是从本地数据库获取的。一切都很好,直到这里。当我将 new child 放入 firebase 时,它不会立即出现在我的应用程序中。它没有放在本地数据库中。我知道我必须每次都更新我的远程数据库,例如每六个小时一次。我做了一些研究来做到这一点。可以使用 Work Manager 和 JobScheduler,但我不知道如何使用。有没有人给我建议?
WorkManager 是 Jetpack 的一部分,是 Google 的一个库,它处理需要保证执行的可延迟工作。
你可以阅读这个blog to see if it covers your requirements. The documentation is an excellent starting point and there's a codelab that you can do to try the library itself available both in Java and Kotlin。
WorkManager 在 API Level 23+ 上运行时使用 JobScheduler,对于旧的 Android 版本(WorkManager 支持 API Level 14+)它使用 AlarmManager 和 Broadcast 接收器。