disconect 또는 DatabaseErrors 이벤트가 확실하지 않습니다. 먼저 나는 때 대화 쇼 중포 기지에 시작 데이터를로드를 한 다음 나는 두 경우에 그 대화 상자를 닫하려면 : 데이터를로드 성공, 나는 onDataChange 대화를 dissmiss :Firebase 데이터베이스에 대한 disconect 처리 중
인터넷이있다.
인터넷이 연결되어 있지 않거나 앱을 시작할 때 Wi-Fi를 빨리 끕니다.
두 번째 경우에는 OnCancelled가 호출되며,이 방법에서는 대화를 닫습니다. 그러나 실제로, 그것은 취소 요구가 아닙니다.
그래서 두 번째 경우에 대화를 무시할 수 있습니다. 서버가 리스너를 거부 할 때 여기에 사용자가 데이터에 액세스 할 수있는 권한이 없습니다 일반적으로 할 때,
private void getCategory() {
mDatabase = FirebaseDatabase.getInstance().getReference();
mDatabase.child(ReferenceToFirebase.CHILD_CATEGORIES)
.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
//do something
//then dismiss dialog
mDialog.dismiss();
}
@Override
public void onCancelled(DatabaseError databaseError) {
mDialog.dismiss();
}
});
}