开发者社区 问答 正文

身份验证FirebaseNetworkException:发生网络错误(例如超时,连接中断或主机不可

我知道之前曾有人问过这个问题,但没有一个解决方案对我有用,因此希望有人能对此问题提供新的解决方案。

我的身份验证以前在注册和登录上都可以正常工作,现在突然不再起作用。我现在已经向多个用户注册并登录,然后才收到'FirebaseNetworkException:每当我尝试执行任一操作时,都会发生网络错误(例如超时,连接中断或主机无法访问)。

我有Google Play服务正在运行,并且在我的依赖项中有实现。

这是我的代码:

else if (!(Email.isEmpty() && pword.isEmpty()&& name.isEmpty() && username.isEmpty())) {
                   mFirebaseAuth.createUserWithEmailAndPassword(Email, pword).addOnCompleteListener(Register.this, new OnCompleteListener<AuthResult>()
                   {
                       @Override
                       public void onComplete(@NonNull Task<AuthResult> task)
                       {
                           if (!task.isSuccessful())
                           {
                               Toast.makeText(Register.this, "onComplete: Failed=" + task.getException().getMessage(), Toast.LENGTH_SHORT).show();
                           } else
                               {

                               FirebaseUser user = mFirebaseAuth.getCurrentUser();
                               UserId = user.getUid();

                               Score = 0;
                               User createUser = new User(username, Email, name, Score);
                               createUser.setUsername(username);
                               createUser.setEmail(Email);
                               createUser.setFirstName(name);
                               createUser.setScore(Score);

                               mRootRef.child(UserId).setValue(createUser);


                               startActivity(new Intent(Register.this, Menu.class));
                           }
                       }


                   });
               } else {
                   Toast.makeText(Register.this, "Error Occurred!", Toast.LENGTH_SHORT).show();

               }

           }

       });

   }

我有非常相似的几乎相同的代码进行注册,我也收到此错误。

有谁知道为什么会这样或对此有任何解决方案/解决方法

展开
收起
垚tutu 2019-11-28 19:23:47 1097 分享 版权
阿里云 AI 助理回答

看起来你遇到的问题与Firebase认证有关,特别是在网络请求方面。尽管我不是专门针对Firebase的技术支持,但可以提供一些通用的故障排查建议,希望能帮助到你。

  1. 检查网络连接:确保你的设备有稳定的网络连接。尝试切换到不同的网络环境(如从移动数据切换到Wi-Fi)看是否有所改善。

  2. 更新依赖库:确认你的Firebase和Google Play服务依赖项是最新的。过时的库可能会导致兼容性问题或已知错误。在你的build.gradle文件中检查并更新相关依赖。

  3. 查看日志详情:FirebaseNetworkException通常会伴随更详细的错误信息。使用Android Studio的日志查看器(Logcat)来获取更具体的错误描述,这有助于定位问题所在。

  4. 权限检查:确认你的应用具有必要的网络权限。在AndroidManifest.xml中应包含以下权限:

    <uses-permission android:name="android.permission.INTERNET" />
    
  5. 清理缓存与重试:有时候清除项目缓存、重建项目或者卸载重新安装应用能解决一些奇怪的问题。

  6. 模拟器问题:如果你在使用模拟器,有时模拟器的网络设置可能导致问题。尝试重启模拟器或使用真实设备测试。

  7. Firebase配置:检查Firebase控制台中项目的设置,确保没有误操作导致了认证功能被禁用或配置不正确。

  8. 时间同步:设备的时间设置也会影响某些网络请求,确保设备时间与网络时间同步。

如果以上步骤都无法解决问题,可能需要考虑直接咨询Firebase官方支持或在Firebase开发者社区论坛提问,那里会有更多针对Firebase具体问题的专业人士能够提供帮助。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答