android - 获取firebase android中特定值的推送ID

标签 android firebase firebase-realtime-database

当我像下一个一样向它推送值时,我想检索由 firebase 生成的 id

Firebase

我想检索该电子邮件的“-KGdKiPSODz7JXzlgl9J”这个 ID 我试过 getKey() 但它返回“用户” 当用户获得值(value)时,它将整个对象从 id 返回到个人资料图片,这不会让我在我的应用程序中将其作为用户对象

如何解决?

    Firebase users = myFirebaseRef.child("users");
    users.orderByChild("email").equalTo("z@m.com").addListenerForSingleValueEvent(new ValueEventListener() {
        @Override
        public void onDataChange(DataSnapshot dataSnapshot) {

            dataSnapshot.getKey();
            Log.d("User",dataSnapshot.getRef().toString());
            Log.d("User",dataSnapshot.getValue().toString());
        }

        @Override
        public void onCancelled(FirebaseError firebaseError) {

            Log.d("User",firebaseError.getMessage() );
        }
    });

最佳答案

您可以从 push() 中读取 key ,而无需推送值。稍后您可以使用该键创建一个子项并推送该键的值。

// read the index key
String mGroupId = mGroupRef.push().getKey();
....
....
// create a child with index value
mGroupRef.child(mGroupId).setValue(new ChatGroup());

mGroupId 包含用于索引您要保存的值的键。

关于android - 获取firebase android中特定值的推送ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37094631/

相关文章:

angular - 如何使用 snapshotChanges() 方法获取键值和过滤数据?

Android - 按时间戳排序 Firebase 数组

安卓 GCM : Can we get data as a complete JSON structure?

android - SupportMapFragment 具有自定义布局,可能吗?

android - API 22 中弃用了 NameValuePair

javascript - 在使用 Cloud Functions 时,如何使用 Firebase Admin SDK 更改 Firebase 实时数据库中的数据?

javascript - Firebase 函数仅设置 Firebase 实时数据库中的第一个值

android - Listview 未填充且 getView 函数也未被调用

node.js - 带有前缀的 Node JS 谷歌云消息传递主题出现错误 : Malformed topic name

javascript - Firebase 谷歌身份验证问题