2016-07-08 14 views
0

Ich verwende folgenden Code zum Speichern von Daten auf Firebase. Aber es gibt Erlaubnis verweigert Fehler. Hier ist mein Code. Ich habe alle Anweisungen von Firebase gefolgt.Daten werden nicht mit Firebase gespeichert

buttonSave.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       Firebase ref = new Firebase(Config.FIREBASE_URL); 
       String name = editTextName.getText().toString().trim(); 
       String address = editTextAddress.getText().toString().trim(); 
       Person person = new Person(); 
       person.setName(name); 
       person.setAddress(address); 
       ref.child("Person").setValue(person); 
       ref.addValueEventListener(new ValueEventListener() { 
        @Override 
        public void onDataChange(DataSnapshot snapshot) { 
         for (DataSnapshot postSnapshot : snapshot.getChildren()) { 
          Person person = postSnapshot.getValue(Person.class); 
          String string = "Name: " + person.getName() + "\nAddress: " + person.getAddress() + "\n\n"; 
          textViewPersons.setText(string); 
         } 
        } 

        @Override 
        public void onCancelled(FirebaseError firebaseError) { 
         Log.e("The read failed: ", firebaseError.getMessage()); 
        } 
       }); 

      } 
     }); 
+5

folgen Sie diesem Link http://stackoverflow.com/questions/33606853/firebase-permission-denied-when-reading-data-after-authentication – sushildlh

+0

Überprüfen Sie Ihre Berechtigungen auf Firebase-Konsole, unter Datenbank -> Regeln –

+0

Ich bekomme im Regelteil folgen. { "Regeln": { ".mehr ": "Auth = null", " .WRITE": "Auth = null" } } –

Antwort

5

Sie haben möglicherweise folgende Regel in der Registerkarte Regeln:

{ 
    "rules": { 
    ".read": "auth != null", 
    ".write": "auth != null" 
    } 
} 

Diese Regel bedeutet, dass nur authentifizierte Benutzer der Lage wäre, Lese- und Schreiboperationen durchzuführen.

einfach, es ändern:

{ 
    "rules": { 
    ".read": "true", 
    ".write": "true" 
    } 
} 

Achtung: Diese Regel bedeutet, dass jemand auf Ihre Feuerbasis Datenbank lesen und schreiben kann.

Schritte: Gehen Sie zu Firebase Console -> Wählen Sie Projekt -> Wählen Sie Datenbank aus der linken Seite Menü -> Klicken Sie auf Regeln -> Kopieren Sie die Regeln drüben.

+0

Wie kann ich es einrichten, so muss ich den Benutzer nicht registrieren, aber nur die App kann darauf zugreifen Datenbank? – Si8

+1

@ Si8 überprüfen Sie meine aktualisierte Antwort. –

+0

ThNk Sie. Aber keine Möglichkeit, jemanden daran zu hindern, als richtig zuzugreifen? – Si8

Verwandte Themen