usuario users the permission_denied permission permisos have failed error doesn desired data auth android firebase firebase-realtime-database android-database

android - the - listener at users failed permission_denied



Error de Firebase Permiso denegado (1)

Esto se debe a que no está autorizado para acceder a la base de datos; consulte la pestaña Reglas en la base de datos en tiempo real

Si es

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

Esto significa que solo los usuarios autorizados pueden escribir y leer los datos.

Cambiando a

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

Permite que cualquiera escriba la base de datos

Cuando vaya a Producción, asegúrese de usar la primera

Soy muy principiante de base de fuego y trato de obtener valor de mi base de datos.

Pero me muestra el mismo error cada vez.

W/SyncTree: Listen at /child failed: FirebaseError: Permission denied

Mis reglas de base de fuego

{ "Condition" : "sunny", "child" : 5 }

mi Androidmanifest.xml

<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.mohit.firebase" > <uses-permission android:name="android.permission.INTERNET" /> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:supportsRtl="true" android:theme="@style/AppTheme" > <activity android:name=".MainActivity" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>

Mi paquete mainactivity.java com.mohit.firebase;

import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.util.Log; import android.view.View; import android.widget.Button; import android.widget.TextView; import com.firebase.client.DataSnapshot; import com.firebase.client.Firebase; import com.firebase.client.FirebaseError; import com.firebase.client.ValueEventListener; public class MainActivity extends AppCompatActivity { TextView tv; Button bt1; Button bt2; Firebase mRootRef; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); tv = (TextView) findViewById(R.id.button); bt1 = (Button) findViewById(R.id.button); bt2 = (Button) findViewById(R.id.button2); Firebase.setAndroidContext(this); mRootRef = new Firebase("https://superb-flag-126719.firebaseio.com/"); Log.d("fb","Firebase Object: " + String.valueOf(mRootRef)); } @Override protected void onStart() { super.onStart(); Firebase mchild = mRootRef.child("child"); mchild.addValueEventListener(new ValueEventListener() { @Override public void onDataChange(DataSnapshot dataSnapshot) { String condition = (String) dataSnapshot.getValue(); Log.d("fb","String get: " + condition); tv.setText(condition); } @Override public void onCancelled(FirebaseError firebaseError) { } }); } }

mi BuildGraddle

apply plugin: ''com.android.application'' android { compileSdkVersion 23 buildToolsVersion "23.0.2" defaultConfig { applicationId "com.mohit.firebase" minSdkVersion 16 targetSdkVersion 23 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile(''proguard-android.txt''), ''proguard-rules.pro'' } } packagingOptions { exclude ''META-INF/LICENSE'' exclude ''META-INF/LICENSE-FIREBASE.txt'' exclude ''META-INF/NOTICE'' } } dependencies { compile fileTree(dir: ''libs'', include: [''*.jar'']) testCompile ''junit:junit:4.12'' compile ''com.android.support:appcompat-v7:23.1.1'' compile ''com.firebase:firebase-client-android:2.5.2+'' }

Revisé mi URL de base de fuego. Es perfectamente correcto.