私はFirebase
AndroidアプリにDatabaseReference
を使って新しい子を追加しようとしています。私がやっている:Firebaseデータベースに新しい子を追加する方法
DatabaseReference mDatabase = FirebaseDatabase.getInstance().getReference()
mDatabase.child("childToAdd").setValue(1);
それがない場合、それはデータベースに子を追加すると、私は定期的にFirebase
リファレンスでこれを行うことができます。
DatabaseReference
でどうすればいいですか?
編集:すべての提案をいただきありがとうございますが、次のコードに問題があります。 ifブロックに入ると、データをデータベースにプッシュしません。
https://gist.github.com/rounaksalim95/a5cba332400c6caf8320f15b0cbf06e8
私は古いFirebase参照して、これをしようとすると、私は、エラーコード11(firebase実行ループから呼び出されるユーザコード)を取得し、新しいデータベースを参照して、私は、エラーコードを取得-3(PermissionDeniedノー持っているにもかかわらずセキュリティルール)。
更新:
私はそれは私が単一の値のイベントリスナーを使用するように望んで行うようになった:
Firebase userRef = new Firebase(BASEURL + "userData");
userRef.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
if (dataSnapshot.child(user.getUid()).getValue() == null) {
userRef.child(user.getUid()).setValue(1);
}
}
@Override
public void onCancelled(FirebaseError firebaseError) {
}
});
ただし、データベースの参照は、私はこのような値を追加することはできません。
私はあなたの質問に間違いがあるかもしれませんが、 'mDatabase'は' DatabaseReference'ではありませんか? 'getReference()'メソッドは 'DatabaseReference'を返します –