com.google.firebase.FirebaseNetworkException:网络错误(例如超时,连接中断或主机无法访问)

时间:2019-09-12 14:42:51

标签: android firebase-realtime-database firebase-authentication firebase-storage android-things

我在Android Things设备上使用Firebase实时数据库和云存储。我有一个规则定义为“允许所有人读写”。当我试图在那里写东西

final DatabaseReference log = mDatabase.getReference("logs").push();
            final StorageReference imageRef = mStorage.getReference().child(log.getKey());

            UploadTask task = imageRef.putBytes(imageBytes);
            task.addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
                @Override
                public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
                    Uri downloadUrl = taskSnapshot.getDownloadUrl();
                    log.child("timestamp").setValue(ServerValue.TIMESTAMP);
                    log.child("image").setValue(downloadUrl.toString());
                    annotateImage(log, imageBytes);
                }
            }).addOnFailureListener(new OnFailureListener() {
                @Override
                public void onFailure(@NonNull Exception e) {
                    log.removeValue();
                }
            });

,我收到Firebase错误,说我应该先登录。 然后,我尝试登录(以前创建了用户)

    mAuth.signInWithEmailAndPassword(email, password)
            .addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
                @Override
                public void onComplete(@NonNull Task<AuthResult> task) {
                    if (task.isSuccessful()) {
                        // do my work
                    } else {
                        // handle error
                    }
                }
            });

但是现在它说:

  

com.google.firebase.FirebaseNetworkException:网络错误(例如超时,连接中断或主机无法访问)

我在设备上拥有互联网,并且好像可以访问Firebase之前说我需要登录。

我正在使用Firebase核心,存储,身份验证和数据库版本16。

有什么想法可以解决这个问题吗?

1 个答案:

答案 0 :(得分:1)

B / c,我的wi-fi名称中包含空格,我的AndroidThings设备不会与它连接(在安装时,它说“连接成功”,但不是) 。该设备仅在wi-fi名称中的空格前看到第一个单词。)因此,我创建了一个热点,其中没有空格,并且可以正常工作。