私は現在、バックエンドに厳密にFirebaseを使用するアプリケーションを開発中です。私のアプリケーションでは、30のメッセージの後に書かれた最初のメッセージを削除したいと思います。言い換えれば、私は30のメッセージだけを格納することを許可したいと思います。私のfirebaseデータベースには、「ユーザ」と呼ばれるノードがあり、次にユーザIDのノードがあり、ユーザIDの1つの下にアイテムと呼ばれる別のノードがあります。しかし、itemsノードの下にある最初の子を削除したいのですが、その子の名前を知りません。私は.push()メソッドを使用してキーを設定しています。誰もその最初の子供だけを削除する方法を知っていますか?Firebaseのpush()キーを使用して最初の子を削除する
私はFirebaseの子供を削除する方法を知っていますが、その子供にアクセスする方法はわかりません。私は次の行に沿って何かを試しました:
DatabaseReference firstMessage = mDatabase.child("users").child(mUserId).child("items").getRef();
次に、これを実行して子供を削除します。
firstMessage.removeValue();
私は追加の子が存在すべきであることを右.child(「アイテム」)の後に知っているが、どのように私は、そのキーを入手できますか?
編集:あなたは、あなたのOnDataChangeのでこれを試すことができ
DatabaseReference firstMessage = mDatabase.child("users").child(mUserId).child("items").orderByPriority().limitToFirst(1).getRef();
最も簡単な解決策は、おそらくそれが応答で古いアイテムを削除する必要がある場合は、各項目が、追加されると、決定したデータベース・トリガーを書くことFirebaseのためのクラウド機能を使用しようとしています。 –