检查字段数据是否更改而不是子数据中的任何字段

Ano*_*ias 5 android web-services firebase firebase-realtime-database

我可以检查是否有任何我参考的孩子的数据没有变化没有问题,但我无法找到一种方法来检查该孩子中某个字段是否发生了变化.

这里有一些代码.child("job")不起作用,因为job是字段.这只是我尝试的一些事情.

 Firebase ref = new Firebase(Config.FIREBASE_URL);

        //adding a value event listener so if data in database changes it does in textview also not needed at the minute
        ref.child("Driver").child("Driver2").child("job").addValueEventListener(new ValueEventListener() {
            @Override
            public void onDataChange(DataSnapshot snapshot) {

                for (DataSnapshot postSnapshot : snapshot.getChildren()) {


                    Toast.makeText(ProfileActivity.this, "YEAAA ", Toast.LENGTH_SHORT).show();

                }

            }

            /************had to implement this method****************/
            @Override
            public void onCancelled(FirebaseError firebaseError) {
                System.out.println("The read failed: " + firebaseError.getMessage());

            }
        });
Run Code Online (Sandbox Code Playgroud)

这是数据库中的json

  "Driver" : {
    "Driver1" : {
      "job" : "none",
      "lat" : 53.4013419,
      "lon" : -111.803055,
      "name" : "JOHNNY"
    },
    "Driver2" : {
      "job" : "job",
      "lat" : 53.4012956,
      "lon" : -6.4091191,
      "name" : "MICK"
    },
    "Driver3" : {
      "job" : "cccc",
      "lat" : 45.815399,
      "lon" : 15.966568,
      "name" : "Boris"
    }
  }
Run Code Online (Sandbox Code Playgroud)

我想检查作业字段是否发生变化,因为坐标字段无论如何都会不断变化.

Ale*_*amo 7

您正在使用正确addValueEventListener()reference,但你并不需要那个for loop.你DataSnapshot已经在job child,其中键是job,值是:none.所以你需要删除迭代.希望能帮助到你.