2

これが私のコードです:

    firebaseRef.getRoot().child(".info/connected").addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(DataSnapshot snapshot) {
            if (snapshot.getValue(Boolean.class)) {
                // We're connected (or reconnected)! Set up our presence state.
                firebaseRef.child("child").setValue("value");

            }
        }

        @Override public void onCancelled() { }
    });

「子」パスのセキュリティ ルール:

".write": (auth != null);

クライアントが切断すると、再接続setValue("value");が機能するはずです。

JS SDK で完全に動作します。

ただし、Java SDK は再接続に問題があるようです。そこにはできずsetValue("value")、Firebase はPermission deniedエラーを返します。

何か問題がありますか?助けてください。ありがとうございました!

4

1 に答える 1

3

これは、実際には Firebase SDK のバグでした。これはバージョン 1.0.10 で修正されており、 https ://www.firebase.com/docs/downloads.html からダウンロードできます。

于 2013-11-08T17:24:46.267 に答える