Cha*_*har 14 android firebase firebase-realtime-database
我坚持理解使Firebase应用程序脱机的概念.根据文档,我们需要调用:
FirebaseDatabase.getInstance().setPersistenceEnabled(true);
Run Code Online (Sandbox Code Playgroud)
但是我们应该在哪里打电话呢?应该在应用程序的每个活动中使用它吗?因为,当我在我的Application类onCreate()方法中使用它时,我的应用程序不断崩溃.
那么,为了让我们的应用离线,我们应该遵循的最佳做法是什么.
另一个疑问是上述和之间的区别 DatabaseReference.keppSynced(true);
Jin*_*aul 15
创建一个应用程序类
public class MyApp extends Application {
@Override
public void onCreate() {
super.onCreate();
FirebaseDatabase.getInstance().setPersistenceEnabled(true);
}
}
Run Code Online (Sandbox Code Playgroud)
并将你的清单改为
<application
android:name=".MyApp"
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
Run Code Online (Sandbox Code Playgroud)
setPersistenceEnabled()应该在启动之前调用一次,然后再检索数据库的第一个引用.我打电话后直接打电话给我FIRApp.configure()
启用持久性允许完全脱机保留信息.这一点的重要组成部分是,即使您强制关闭应用程序并重新打开它,也会完成脱机请求和更新.如果您正在寻找要设置的布尔值的离线访问.
如果您希望在检索信息时缓存最新数据的情况,则使用保持同步,但下次打开应用程序时不一定需要恢复该数据.
一个很好的使用示例是,如果您有访问登录用户详细信息的视图.您可以指定保持该数据库引用同步,并且可以更快地获取最新数据,而不是在使用详细信息的所有视图上都有用户详细信息侦听器.
有关持久性和同步的更多详细信息,请参阅Firebase文档:https://firebase.google.com/docs/database/android/offline-capabilities
| 归档时间: |
|
| 查看次数: |
14234 次 |
| 最近记录: |