如何解决Firebase查询方法不起作用?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (364)

这是我的数据树:

"look-twopointo": {
    "0" {
        "comment": "Hi"
        "Text1": "Hello"
        "Text2": "Bonsoir"
        "type": "Bonjour"
        "version": "4.0.6"
    }
}

由于某种原因,查询不起作用:

button.setOnClickListener(new View.OnClickListener() {
    public void onClick(View v) {
        mDatabase = FirebaseDatabase.getInstance().getReference().child("0");// pay attention to the this path reference
        // Read from the database
        Query query = mDatabase.child("version")/*.orderByChild("Text1")*/.equalTo("4.0.6")/*.startAt("d")/*.endAt("Dude")*/;
        query.addValueEventListener(new ValueEventListener() {
            @Override
            public void onDataChange(DataSnapshot dataSnapshot) {
                // This method is called once with the initial value and again
                // whenever data at this location is updated.
                //String value = dataSnapshot.getValue(String.class); //these three lines below are probably the problem
                String value = (String) dataSnapshot.getValue();
                System.out.println(value);
                Text.setText(value);
            }

这是系统输出的内容:

D/ViewRootImpl: ViewPostImeInputStage processPointer 0
D/ViewRootImpl: ViewPostImeInputStage processPointer 1
I/DynamiteModule: Considering local module 
com.google.android.gms.firebase_database:4 and remote module 
com.google.android.gms.firebase_database:6
              Selected remote version of 
com.google.android.gms.firebase_database, version >= 6
D/ResourcesManager: For user 0 new overlays fetched Null
W/System: ClassLoader referenced unknown path: 
/data/data/com.google.android.gms/app_chimera/m/0000005e/n/armeabi-v7a
      ClassLoader referenced unknown path: 
/data/data/com.google.android.gms/app_chimera/m/0000005e/n/armeabi
D/ResourcesManager: For user 0 new overlays fetched Null
I/System.out: null

这是可能导致此错误

05-28 17:12:42.743 2449-3078/? E/NetlinkEvent: NetlinkEvent::FindParam(): Parameter 'LABEL' not found
NetlinkEvent::FindParam(): Parameter 'UID' not found

我希望它输出4.0.06。

提问于
用户回答回答于

将查询更改为:

DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
Query query = rootRef.orderByChild("version").equalTo("4.0.6");

将返回所有具有versions4.0.6

所属标签

可能回答问题的人

  • 不吃貓的鱼oo

    5 粉丝466 提问6 回答
  • 人生的旅途

    10 粉丝484 提问5 回答
  • Richel

    8 粉丝0 提问4 回答
  • 御姐万岁

    6 粉丝507 提问3 回答

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励