【问题标题】:error with updating user information firebase更新用户信息firebase时出错
【发布时间】:2016-12-17 16:34:08
【问题描述】:

所以我正在创建一个注册页面并将其与 firebase 用户联系起来

我在更新个人资料时收到错误

我的代码如下:

用于创建我使用的新用户

mAuth.createUserWithEmailAndPassword(email, password)
                .addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
                    @Override
                    public void onComplete(@NonNull Task<AuthResult> task) {

                        if (!task.isSuccessful()) {
                            Log.v("SignUp", "222222222222222222222222222");
                            Toast.makeText(SignUp.this, "SignUp failed",
                                    Toast.LENGTH_SHORT).show();
                        } else {
                            Log.v("SignUp", "333333333333333333333333333");
                            uploadImage();

                        }
                    }
                });

uploadImage() 方法是

public void uploadImage() {
    if (image != null) {
        FirebaseStorage storage = FirebaseStorage.getInstance();
        StorageReference main = storage.getReferenceFromUrl("link to my account");
        StorageReference storageReference = main.child("images/" + image.getLastPathSegment());
        UploadTask uploadTask = storageReference.putFile(image);

        //addonFailurelistener too

        uploadTask.addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
            @Override
            public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
                Log.v("SignUp", "777777777777777777777777");
                String download = taskSnapshot.getDownloadUrl().toString();


                UserProfileChangeRequest profileUpdates = new UserProfileChangeRequest.Builder()
                        .build();
                //i tried here with .setDisplayName(name)
                //and with setPhotoUri(Uri.parse(download)

FirebaseAuth.getInstance().getCurrentUser().updateProfile(profileUpdates).addOnCompleteListener(new OnCompleteListener<Void>() {
                    @Override
                    public void onComplete(@NonNull Task<Void> task) {
                        if (task.isSuccessful()) {
                            Log.v("SignUp", "8888888888888888888888888888");
                            addDatabase();
                        } else {

                       FirebaseAuth.getInstance().getCurrentUser().delete().addOnCompleteListener(new OnCompleteListener<Void>() {
                                @Override
                                public void onComplete(@NonNull Task<Void> task) {
                                    if (task.isSuccessful()) {
                                        Log.v("SignUp", "999999999999999999999999999");
                                        Toast.makeText(SignUp.this, "Error Occuered While setting your account", Toast.LENGTH_LONG);
                                        finish();
                                        startActivity(new Intent(SignUp.this, SignUp.class));
                                    } else {
                                        Log.v("SignUp", "..........................");
                                        Toast.makeText(SignUp.this, "Error Cannot be resolved \n please try with another Email", Toast.LENGTH_LONG);
                                        finish();
                                    }
                                }
                            });
                        }
                    }
                });
            }
        });
}

我的 logcat 得到这样的输出

V/SignUp: 333333333333333333333333333
V/SignUp: 777777777777777777777777
V/SignUp: ..........................

我遵循了 firebase 指南,但看起来我做错了什么

知道为什么它不起作用吗?谢谢

【问题讨论】:

  • 如果您遇到错误,您可以发布 logcat 吗?
  • 不,我没有收到任何错误

标签: java android firebase firebase-authentication firebase-storage


【解决方案1】:

我在等待 24 小时后自动解决了问题,所以我假设帐户在一天内登录一定次数后被阻止 24 小时

【讨论】:

    猜你喜欢
    • 2021-09-14
    • 2016-10-03
    • 2019-07-27
    • 1970-01-01
    • 1970-01-01
    • 2016-06-07
    • 1970-01-01
    • 2015-12-21
    相关资源
    最近更新 更多