You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android Studio中Firebase创建用户失败:task.isSuccessful()始终返回false

解决Firebase创建账号时task.isSuccessful()始终返回false的问题

首先你得先拿到具体的错误原因,这是排查问题的关键。修改onComplete方法里的else分支,把错误信息打印出来:

else {
    String errorMsg = task.getException() != null ? task.getException().getMessage() : "未知错误";
    Toast.makeText(Inscription.this, "创建失败:" + errorMsg, Toast.LENGTH_LONG).show();
    Log.e("InscriptionError", "账号创建错误:" + errorMsg);
}

根据错误信息,对应以下常见原因逐一排查:

  • FirebaseAuth未初始化
    你代码里只声明了FirebaseAuth mAuth;,但没在onCreate里初始化。必须添加这行:

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_inscription); // 别忘了绑定布局
        // 先初始化控件
        editTextEmail = findViewById(R.id.editTextEmail);
        editTextMdp = findViewById(R.id.editTextMdp);
        btnInscription = findViewById(R.id.btnInscription);
        clickConnexion = findViewById(R.id.clickConnexion);
        // 初始化FirebaseAuth
        mAuth = FirebaseAuth.getInstance();
        
        // 你的点击事件代码...
    }
    
  • Firebase控制台未开启邮箱/密码登录
    登录Firebase控制台进入你的项目:

    1. 打开「Authentication」→「登录方法」
    2. 找到「邮箱/密码」,确保开关是启用状态
  • 密码不符合Firebase要求
    Firebase默认要求密码至少6个字符,提前在代码里做校验:

    if (mdp.length() < 6) {
        Toast.makeText(Inscription.this, "密码至少需要6个字符", Toast.LENGTH_SHORT).show();
        return;
    }
    
  • 邮箱已被注册
    如果该邮箱已经在Firebase中创建过账号,会返回类似"email already in use"的错误,提示用户更换邮箱或直接登录已有账号即可。

  • 缺少网络权限
    在AndroidManifest.xml里添加网络权限:

    <uses-permission android:name="android.permission.INTERNET" />
    
  • google-services.json配置错误
    确认从Firebase控制台下载的google-services.json文件,已正确放在app模块根目录,且文件里的包名和你项目的包名完全一致。

内容的提问来源于stack exchange,提问作者SkyBlob

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 13:33:12