【发布时间】:2019-08-19 01:22:07
【问题描述】:
我正在创建一个简单的聊天应用程序,我需要一种方法来检索用户的所有消息。我有以下数据结构:
消息{
-LmPsSILmS8c6ph5UoOi {
格式化时间:“05:43 PM”
消息:“你好”
接收器 ID:“GvaD3JOgp5Ro6TWZCa3I7RvK7682”
senderId:“3BPkGaQq62gnQCbO5UHFIw4XVps2”
}
我想做一个查询,选择 senderId = user.getUid() OR receiverId = user.getUid() 的所有消息
我在互联网上看到过关于 firebase 不这样做的帖子,但必须有办法绕过它,因为我怀疑你是否可以在没有 OR 查询的情况下构建大型应用程序。
我试过了:
myRef.child("Messages").orderByChild("senderId")
.startAt(user.getId()).endAt(user.getId()).orderByChild("receiverId")
.startAt(user.getId()).endAt(user.getId())
.addValueEventListener(
new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
这没有奏效,尽管我已经广泛搜索了一个简单的解决方案,但没有得到任何答案。请帮忙
【问题讨论】:
标签: android firebase firebase-realtime-database