Android 从firebase中移除推送的项目
如何删除具有特定值的推送项? 我有一些带有两个键的推送项:deviceToken和UserID。 我需要删除带有特定设备的项目OKAndroid 从firebase中移除推送的项目,android,firebase,firebase-realtime-database,Android,Firebase,Firebase Realtime Database,如何删除具有特定值的推送项? 我有一些带有两个键的推送项:deviceToken和UserID。 我需要删除带有特定设备的项目OK dev-app push asdasdasdasda(generated key) deviceToken: 12345678 userID: qwerty dgfgdfghhdfgd(generated key)
dev-app
push
asdasdasdasda(generated key)
deviceToken: 12345678
userID: qwerty
dgfgdfghhdfgd(generated key)
deviceToken: 87654321
userID: sdaerty
I need to remove the the 1-st one (which has a DeviceToken with value "12345678").
要基于
deviceToken
获取子项,可以执行如下查询:
Firebase ref = new Firebase("https://dev-app.firebaseio.com/push");
Query queryRef = ref.orderByChild("deviceToken").equalTo(12345678);
queryRef.addChildEventListener(new ChildEventListener() {
@Override
public void onChildAdded(DataSnapshot snapshot, String previousChild) {
System.out.println(snapshot.getKey());
}
// ....
});
我刚刚从中复制了此代码段并将其修改为您的数据。要基于
deviceToken
获取子项,您可以执行如下查询:
Firebase ref = new Firebase("https://dev-app.firebaseio.com/push");
Query queryRef = ref.orderByChild("deviceToken").equalTo(12345678);
queryRef.addChildEventListener(new ChildEventListener() {
@Override
public void onChildAdded(DataSnapshot snapshot, String previousChild) {
System.out.println(snapshot.getKey());
}
// ....
});
我刚刚从中复制了此代码段,并将其修改为您的数据。您的数据结构是什么样子的(请将其添加为文本,无屏幕截图)?还有:你已经试过什么了吗?Firebase非常好,也有很多。@FrankvanPuffelen我编辑了我的问题-结构更高。你能帮我吗?)你的数据结构是什么样的(请将其添加为文本,不要截图)?还有:你已经试过什么了吗?Firebase非常好,也有很多。@FrankvanPuffelen我编辑了我的问题-结构更高。你能帮我吗?)那新的文档呢?您能否提供一个获取引用(例如/node/)的示例,以便我可以在listview中对其使用.removeValue()。我的问题是,我正在尝试获取列表中正确的按下键,以便在/nodes下引用该键,然后删除一个单一项,而不是整个节点引用,这是mDatabase.child(“nodes”).removeValue()当前所做的。当我需要类似于mDatabase.child(“节点”).child(pushedKey).removeValue()的内容时。你有这样的例子吗?当我向节点发送数据时,它看起来是这样的。mDatabase.child(“节点”).push().setValue(POJO);新文档怎么样?您能否提供一个获取引用(例如/node/)的示例,以便我可以在listview中对其使用.removeValue()。我的问题是,我正在尝试获取列表中正确的按下键,以便在/nodes下引用该键,然后删除一个单一项,而不是整个节点引用,这是mDatabase.child(“nodes”).removeValue()当前所做的。当我需要类似于mDatabase.child(“节点”).child(pushedKey).removeValue()的内容时。你有这样的例子吗?当我向节点发送数据时,它看起来是这样的。mDatabase.child(“节点”).push().setValue(POJO);