当前位置:  开发笔记 > 编程语言 > 正文

如何从firebase中的值获取密钥

如何解决《如何从firebase中的值获取密钥》经验,为你挑选了1个好方法。



1> Frank van Pu..:

那是因为你正在使用ValueEventListener.如果查询匹配多个子节点,则返回所有这些子节点的列表.即使只有一个匹配的孩子,它仍然是一个列表.而且,由于您正在调用getKey()该列表,因此您将获得运行查询的位置的键.

要获取匹配子项的键,请遍历快照的子项:

mDatabase.child("clubs")
         .orderByChild("name")
         .equalTo("efg")
         .addListenerForSingleValueEvent(new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot dataSnapshot) {
        for (DataSnapshot childSnapshot: dataSnapshot.getChildren()) {
            String clubkey = childSnapshot.getKey();

但请注意,如果您认为俱乐部名称是唯一的,您可以将俱乐部存储在他们的名下,并在没有查询的情况下访问正确的俱乐部:

mDatabase.child("clubs")
         .child("efg")
         .addListenerForSingleValueEvent(new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot dataSnapshot) {
        String clubkey = dataSnapshot.getKey(); // will be efg

推荐阅读
mobiledu2402852357
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有