【发布时间】:2020-04-03 20:32:05
【问题描述】:
我正在尝试从我的 firebase 数据库中读取数据并将其与适配器一起放入 Recyclerview,但每次我得到这个:
08-20 18:26:53.754 3430-3653/blabla.com.notescloud W/SyncTree: Listen at / failed: DatabaseError: Permission denied
08-20 18:26:53.764 3430-3430/blabla.com.notescloud W/FirebaseRecyclerAdapter: com.google.firebase.database.DatabaseException: Firebase Database error: Permission denied
at com.google.firebase.database.DatabaseError.toException(Unknown Source)
at com.firebase.ui.database.FirebaseRecyclerAdapter.onCancelled(FirebaseRecyclerAdapter.java:175)
at com.firebase.ui.database.ObservableSnapshotArray.notifyListenersOnCancelled(ObservableSnapshotArray.java:135)
at com.firebase.ui.database.FirebaseArray.onCancelled(FirebaseArray.java:129)
at com.google.android.gms.internal.zzdpw.zza(Unknown Source)
at com.google.android.gms.internal.zzdvg.zzbur(Unknown Source)
at com.google.android.gms.internal.zzdvo.run(Unknown Source)
at android.os.Handler.handleCallback(Handler.java:751)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6077)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:866)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:756)
我的规则没问题(记录一下,写入数据库效果很好):
{
"rules": {
"users": {
"$uid": {
".write": "$uid === auth.uid",
".read": "$uid === auth.uid"
}
}
}
}
我的数据库:
database 这是我主要活动中的回收站设置:
rv = findViewById(R.id.rv_notes); //RecyclerView
rv.setLayoutManager(new LinearLayoutManager(this));
ref = FirebaseDatabase.getInstance().getReference(); // Getting a reference of the database
mAdapter = new FirebaseRecyclerAdapter<Note, NoteHolderView>(
Note.class,
android.R.layout.two_line_list_item,
NoteHolderView.class,
ref) {
@Override
public void populateViewHolder(NoteHolderView holder, Note note, int position) {
holder.setmTitleField(note.getmTitle());
holder.setmTimeField(note.getTimeFormatted(getApplicationContext()));
}
};
rv.setAdapter(mAdapter);
希望你能帮我解决这个问题。
谢谢。
【问题讨论】:
标签: android firebase firebase-realtime-database android-recyclerview