【问题标题】:How to retrieve specific data from firebase in android studio如何从 android studio 中的 firebase 检索特定数据
【发布时间】:2018-02-25 07:29:33
【问题描述】:

我是 firebase 和 nosql 数据库的新手

我正在尝试从 Firebase 检索一些特定数据。我有一个节点 Drugs and Assaults,该节点具有许多唯一标识符作为节点,其中包含更多数据。我想从每个节点检索 lat/lng。

请看看这个。Firebase database image

【问题讨论】:

    标签: android firebase firebase-realtime-database


    【解决方案1】:

    要获取纬度/经度,请使用以下代码:

    DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
    DatabaseReference assaultRef = rootRef.child("Assault");
    ValueEventListener eventListener = new ValueEventListener() {
        @Override
        public void onDataChange(DataSnapshot dataSnapshot) {
            for(DataSnapshot ds : dataSnapshot.getChildren()) {
                String latlng = ds.child("liststring").child("2").getValue(String.class);
                Log.d("TAG", latlng);
            }
        }
    
        @Override
        public void onCancelled(DatabaseError databaseError) {}
    };
    assaultRef.addListenerForSingleValueEvent(eventListener);
    

    你的输出将是:

    lat/lng: (20.330198..., 77.809580...)
    lat/lng: (30.786742..., 62.664079...)
    

    【讨论】:

    • 我认为 firebase 文档中有查询。使用它们更好吗?
    • 在这种情况下,您不需要Query。您需要在有条件的情况下使用查询。上面的代码能用吗?
    • 我不是发布问题的人。我只是想知道你为什么不在代码中使用查询。
    • 我认为你的代码可以工作,但是如果数据快照非常大,那么获取数据需要一段时间。我说的对吗?
    • 正如我所说,没有必要。您可以直接在引用上使用addListenerForSingleValueEvent
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-05
    • 1970-01-01
    • 1970-01-01
    • 2019-04-07
    • 1970-01-01
    相关资源
    最近更新 更多