私のメッセージノードの最後のIDを取得しようとしていますが、最後のIDは取得できません。例えば、私の最後のIDは12ですが、それは常に項目10のID私のコードを返します。このようなものです:それはこのような何かを返すFirebaseが最後のIDを取得する - limitToLastが機能しない - アンドロイド
final Query query = firebase.orderByChild("messageId").limitToLast(1);
query.addListenerForSingleValueEvent(new ValueEventListener() {
public void onDataChange(DataSnapshot dataSnapshot) {
Log.i("MessagesFrag","snapshot: "+dataSnapshot.getValue()+"");
}
public void onCancelled(FirebaseError firebaseError) {}
});
:
{10={chatId=6, time=Wed Apr 13 22:20:43 EDT 2016, message=hi, user=123, messageId=10}}
をそれは返す必要があります:
messages
9:
chatId: "6"
message: "hi"
messageId: "9"
time: "Wed Apr 13 22:29:02 EDT 2016"
user: "123"
10:
chatId: "6"
message: "hello"
messageId: "10"
time: "Wed Apr 13 22:29:02 EDT 2016"
user: "1234"
11:
chatId: "6"
message: "how are you?"
messageId: "11"
time: "Wed Apr 13 22:29:02 EDT 2016"
user: "123"
12:
chatId: "6"
message: "I am fine"
messageId: "12"
time: "Wed Apr 13 22:29:02 EDT 2016"
user: "1234"
:
{12={chatId=6, time=Wed Apr 13 22:29:02 EDT 2016, message=I am fine, user=1234, messageId=12}}
私のデータは、このようなものです
それに加えて、「LimitToLast」を「LimitToFirst」に変更すると、最初の要素(ノード1)が得られず、ノード10も取得されます。
誰にも問題があることは知っていますか?
この問題を解決しましたか?私は同じ問題に直面している – Tushar