首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >OperationException导致错误的请求

OperationException导致错误的请求
EN

Stack Overflow用户
提问于 2018-06-08 06:06:04
回答 1查看 768关注 0票数 2

我已经创建了一个登录页面,它成功地允许用户登录/注销和创建帐户。它工作得非常好。代码没有问题。

后来我决定在我的项目中包含一个MapActivity来测试一些东西,但后来我决定删除它。自从删除它后,它就不允许用户登录到他们的帐户。我得到了Error: An internal error has occurred [BAD REQUEST]错误。

我尝试过的东西:

  • 我已经在Firebase上启用了Email/Password console.
  • Removed我的项目中与相关的任何东西。我的程序在不同的模拟器上失效Caches/Restart.
    • Running

我能做些什么来纠正这个问题?如果你想看代码,请告诉我。提前谢谢。

这是LoginActivity.java文件:

代码语言:javascript
复制
package com.example.name.myapp;

import android.content.Intent;
import android.support.annotation.NonNull;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ProgressBar;
import android.widget.Toast;

import com.google.android.gms.tasks.OnCompleteListener;
import com.google.android.gms.tasks.Task;
import com.google.firebase.auth.AuthResult;
import com.google.firebase.auth.FirebaseAuth;
import com.google.firebase.auth.FirebaseUser;

public class LoginActivity extends AppCompatActivity {
    private EditText loginEmailText;
    private EditText loginPassText;
    private Button loginBtn;
    private Button loginRegBtn;

    private FirebaseAuth mAuth;
    private ProgressBar loginProgress;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_login);

        mAuth = FirebaseAuth.getInstance();

        loginEmailText = (EditText) findViewById(R.id.reg_email);
        loginPassText = (EditText) findViewById(R.id.reg_confirm_pass);
        loginBtn = (Button) findViewById(R.id.login_btn);
        loginRegBtn = (Button) findViewById(R.id.login_reg_btn);
        loginProgress = (ProgressBar) findViewById(R.id.login_progress);

        loginRegBtn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent myIntent = new Intent(LoginActivity.this, RegisterActivity.class);
                startActivity(myIntent);

            }
        });

        loginBtn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                String loginEmail = loginEmailText.getText().toString();
                String loginPass = loginPassText.getText().toString();

                if(!TextUtils.isEmpty(loginEmail) && !TextUtils.isEmpty(loginPass)) {
                    loginProgress.setVisibility(View.VISIBLE);
                    mAuth.signInWithEmailAndPassword(loginEmail, loginPass).addOnCompleteListener(new OnCompleteListener<AuthResult>() {
                        @Override
                        public void onComplete(@NonNull Task<AuthResult> task) {
                            if(task.isSuccessful()) {
                                sendToMain();
                            } else {
                                String errorMessage = task.getException().getMessage();
                                Toast.makeText(LoginActivity.this, "Error : " + errorMessage, Toast.LENGTH_LONG).show();
                            }
                            loginProgress.setVisibility(View.INVISIBLE);
                        }
                    });
                }
            }
        });
    }

    @Override
    protected void onStart() {
        super.onStart();

        FirebaseUser currentUser = mAuth.getCurrentUser();

        if(currentUser != null) {
            sendToMain();
        }
    }

    private void sendToMain() {
        Intent mainIntent = new Intent(LoginActivity.this, MainActivity.class);
        startActivity(mainIntent);
        finish();
    }
}

下面是我得到的异常:

代码语言:javascript
复制
a06-07 08:54:38.591 2409-2943/com.google.android.gms.persistent E/AsyncOperation: serviceID=51, operation=GetExperimentTokensOperationCall
OperationException[Status{statusCode=No config packages for log source, or config package not registered, resolution=null}]
    at aelu.a(:com.google.android.gms@12521024@12.5.21 (040700-189987672):32)
    at aelu.a(:com.google.android.gms@12521024@12.5.21 (040700-189987672):66)
    at noj.run(:com.google.android.gms@12521024@12.5.21 (040700-189987672):40)
    at axja.run(:com.google.android.gms@12521024@12.5.21 (040700-189987672):2)
    at nsg.run(:com.google.android.gms@12521024@12.5.21 (040700-189987672):27)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
    at nya.run(Unknown Source:7)
    at java.lang.Thread.run(Thread.java:764)
EN

回答 1

Stack Overflow用户

发布于 2018-06-08 07:11:02

如果有帮助,您可以添加其他异常验证,用于检查问题:

代码语言:javascript
复制
mAuth.signInWithEmailAndPassword(login, pass)
.addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
          @Override
           public void onComplete(@NonNull Task<AuthResult> task) {
             if(task.isSuccessful())
              {
                  //-----------
    }else if (task.getException() instanceof FirebaseAuthInvalidUserException) {    
    }else if(((FirebaseAuthException) task.getException()).getErrorCode().equals("ERROR_USER_DISABLED"))
    {
    }    
    else if(((FirebaseAuthException) task.getException()).getErrorCode().equals("ERROR_USER_NOT_FOUND "))
        {
        }else if(((FirebaseAuthException) task.getException()).getErrorCode().equals("ERROR_USER_TOKEN_EXPIRED "))
        {
        }else if(((FirebaseAuthException) task.getException()).getErrorCode().equals("ERROR_INVALID_USER_TOKEN "))
        {
        }
        }
        });
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50750792

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档