使用checkConnectionStatus()
文档中提供的诊断Firebase
方法,我在日志中看到我的Firebase
实例未连接到其服务器。
我的读/写规则都设置为true,并且在调试器中检查DatabaseReference
的值,则database
URL是正确的。我还尝试使用多个WiFi连接来确保此问题不是由于防火墙设置引起的。
这个特殊的fragment
可以完美地起作用,直到这个问题突然出现并且对我来说不知道如何解决!
我对Firebase
的应用级别依赖性为:
implementation 'com.google.firebase:firebase-core:16.0.8'
implementation 'com.google.firebase:firebase-database:16.1.0'
Firebase文档中提供的返回false的诊断方法是:
private void checkConnectionStatus(){
DatabaseReference connectedRef = FirebaseDatabase.getInstance ().getReference(".info/connected");
connectedRef.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot snapshot) {
boolean connected = snapshot.getValue(Boolean.class);
if (connected) {
Log.d("Status", "connected");
} else {
Log.d("Status", "not connected");
}
}
@Override
public void onCancelled(@NonNull DatabaseError error) {
Log.w("Uh oh", "Listener was cancelled");
}
});
}
我的读/写规则是:
{
"rules": {
".read": true,
".write": true
}
}
我在另一个项目中使用了Firebase
,但从未遇到过这个问题,所以我在做错事情时茫然不知所措!