Firebase实时数据库:组织AddValueListener部件的最佳方法是什么?

时间:2018-10-26 16:21:55

标签: java android firebase firebase-realtime-database

我正在使用Firebase实时数据库创建应用程序。 onDataChange中的代码变得越来越胖。例如,部分内部有一些if语句,并且嵌套了该语句。我想知道是否有更好的方式来组织这部分。我想将与Firebase处理的部分与Activity分开。

mNode.addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
             //this part is getting fat
             if (dataSnapshot.haschild("aValue")) {
                  ...
                  if (dataSnapshot.
                     ...
                  if (dataSnapshot.
                     ...
            } else {...

1 个答案:

答案 0 :(得分:0)

  

我想知道是否有一种更好的方式来组织这部分。

使用这些if语句对我来说看起来不错。您在回调中使用它们,这是从异步方法获取数据的正确方法。如果需要,可以创建一个方法并将DataSnapshot对象作为参数传递,并在该方法中移动整个逻辑。但是我认为这种方法没有错。