首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当android应用程序被杀死时,如何处理离线的防火墙数据库?

当android应用程序被杀死时,如何处理离线的防火墙数据库?
EN

Stack Overflow用户
提问于 2016-06-20 12:57:58
回答 3查看 3.3K关注 0票数 7

我第一次研究了firebase,阅读了有关firebase脱机功能的文章,测试了两种场景:

场景1 (working):

  1. 脱机模式,将数据写入防火墙数据库。
  2. 按后退按钮(关闭的应用程序)
  3. 在网上,数据被添加到消防队数据库中。

场景2(不工作):

  1. 脱机模式,将数据写入防火墙数据库。
  2. 关闭应用程序
  3. 从后台删除应用程序(杀死应用程序)
  4. 在网上,数据没有被添加

我增加了这一行:

代码语言:javascript
复制
Firebase.getDefaultConfig().setPersistenceEnabled(true);

如何处理场景2?我需要通过本地数据库处理这个场景吗?

EN

回答 3

Stack Overflow用户

发布于 2017-03-14 17:39:33

你用的是Firebase.getDefaultConfig().setPersistenceEnabled(true);keepSynced(true)

因为在[消]火基文件中说是keepSynced(true)让“魔法”发生(和setPersistenceEnabled(true)一起):

通过在位置上调用keepSynced(true),将自动下载该位置的数据并保持其同步,即使没有为该位置附加侦听器。此外,当一个位置保持同步时,将不会从持久磁盘缓存中被逐出。

因此,如果您不使用它,您就不会在本地保存您的数据库,然后当您“杀死”应用程序时,您的应用程序再次打开时将不会有任何数据库可查询。

票数 1
EN

Stack Overflow用户

发布于 2016-06-20 13:22:26

我想您使用一些服务来同步数据,它将不适用于第二个场景。因此,当用户打开数据服务时,您将收到一个广播接收器,从该检查服务没有运行,然后启动该服务。

票数 0
EN

Stack Overflow用户

发布于 2017-08-28 07:08:27

不需要使用本地数据库来处理场景2。在应用程序类中使用Firebase.getDefaultConfig().setPersistenceEnabled(true),在清单文件中使用android:name="yourapplicationclass“。为了在更改网络时(即在线/脱机)处理同步,使用事务处理程序将本地同步处理到firebase数据库,因为有些数据没有被推到firebase server.Like,因此我使用了内部网络更改方法,并解决了这个问题:

代码语言:javascript
复制
mDatabase.runTransaction(new Transaction.Handler() {
            @Override
            public Transaction.Result doTransaction(MutableData mutableData) {
                if(mutableData.getValue() == null) {
                    mutableData.setValue(1);
                } else {
                    mutableData.setValue((Long) mutableData.getValue() + 1);
                }
                return Transaction.success(mutableData); //we can also abort by calling Transaction.abort()
            }

            @Override
            public void onComplete(DatabaseError databaseError, boolean b, DataSnapshot dataSnapshot) {

            }
        });
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37923226

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档