因此,这里有几个类似的问题,但没有一个对我来说有可行的解决方案。
我正在使用从 Github 下载的 Quickstart 演示。今天下载了。我没有更改演示代码中的任何内容。
我已经解决了一些常见错误(根据我所读到的内容):
我在 Firebase 控制台中创建了项目
可下载的 json 文件(使用包名称创建)。我已经提供了
我的 SHA1 指纹。
检查电子邮件/密码登录方法。
我已更新并安装了 Google Play 服务和 Google 存储库(从 Android
Studio SDK 管理器)
我的设备上的 Google Play 服务版本为 9.4.52
如果我在 Firebase 控制台中打开匿名登录选项,我就能够在演示应用程序上成功匿名登录。但电子邮件/密码不起作用。
编辑:不确定我这样做是否正确,但我在 Logcat 中得到了这些
D/EmailPassword: createAccount:[email protected] /cdn-cgi/l/email-protection
W/DynamiteModule: Local module descriptor class for com.google.firebase.auth not found.
W/ResourcesManager: Asset path '/system/framework/com.android.media.remotedisplay.jar' does not exist or contains no resources.
W/ResourcesManager: Asset path '/system/framework/com.android.location.provider.jar' does not exist or contains no resources.
D/EmailPassword: createUserWithEmail:onComplete:false
The logcat
输出显示用户帐户的创建失败。这文档 https://developers.google.com/android/reference/com/google/firebase/auth/FirebaseAuth#createUserWithEmailAndPassword(java.lang.String,%20java.lang.String)表明发生这种情况的原因如下:
- 密码强度不够(少于 6 个字符)
- 电子邮件地址格式错误
- 已存在具有给定电子邮件地址的帐户
Add a Log
到完成侦听器的语句createUserWithEmailAndPassword()
查看失败原因是什么:
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
Log.d(TAG, "createUserWithEmail:onComplete:" + task.isSuccessful());
// If sign in fails, display a message to the user. If sign in succeeds
// the auth state listener will be notified and logic to handle the
// signed in user can be handled in the listener.
if (!task.isSuccessful()) {
Log.d(TAG, "onComplete: Failed=" + task.getException().getMessage()); //ADD THIS
Toast.makeText(EmailPasswordActivity.this, R.string.auth_failed,
Toast.LENGTH_SHORT).show();
}
// [START_EXCLUDE]
hideProgressDialog();
// [END_EXCLUDE]
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)