当前位置: 首页 > 知识库问答 >
问题:

Firebase Auth在android stuio中使应用程序崩溃[副本]

贝洲
2023-03-14

03-29 19:26:37.449 176 02-17602/com.developerillusion.hive e/androidruntime:致命异常:main process:com.developerillusion.hive,pid:17602 java.lang.runtimeexception:无法启动活动ComponentInfo{com.developerillusion.hive/com.developerillusion.hive.registeractivity}:java.lang.IllegalStateException:Default FirebaseApp在此进程中未初始化。确保首先调用FirebaseApp.InitializeApp(上下文)。在Android.app.activitythread.performLaunchActivity(activitythread.java:2339)在Android.app.activitythread.java:2413)在Android.app.activitythread.access$800(activitythread.java:155)在Android.app.activitythread.java:1317)在Android.app.activitythread.dispatchmessage(activitythread.java:1317)在Android.os.handler.loop(looper.java:135),在java.lang.reflect.Method.invoke(Method.java:372),com.android.internal.os.zygoteinit.main(zygoteinit.java:700)的java.lang.reflect.Method.invoke(Method.java:372),methodandargscaller.run(zygoteinit.java:905),java.lang.IllegalStateException:默认FirebaseApp在此进程中未初始化com.developerIllusion.hive。确保首先调用FirebaseApp.InitializeApp(上下文)。在com.google.firebase.firebase.firebaseapp.getinstance(sourceFile:218)在com.google.firebase.auth.firebaseAuth.getinstance(未知来源)在com.developerillusion.hive.registeractivity.oncreate(registeractivity.java:35)在Android.app.activity.performcreate(activity.java:6010)在Android.app.instrumentation.callactivity.create(在Android.app.activitythread.access$800(activitythread.java:155) 在Android.app.activitythread$h.handleMessage(activitythread.java:1317) 在Android.os.handler.DispatchMessage(Handler.java:102) 在Android.os.looper.loop(looper.java:135) 在Android.app.activitythread.main(activitythread.java:5343) 在java.lang.reflect.Method.invoke(本机方法) 在java.lang.reflect.method.invoke(Method.java:372) 在com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:905) 在com.android.internal.os.zygoteinit.main(zygoteinit.java:700) 

        package com.developerillusion.hive;

import android.app.ProgressDialog;
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.TextView;
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;

public class RegisterActivity extends AppCompatActivity
{
    private Button CreateAccountButton;
    private EditText UserEmail, UserPassword;
    private TextView AlreadyHaveAccountLink;

    private FirebaseAuth mAuth;

    private ProgressDialog loadingBar;

    @Override
    protected void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_register);
        mAuth = FirebaseAuth.getInstance();


        InitializeFields();


        AlreadyHaveAccountLink.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v)
            {
                SendUserToLoginActivity();
            }
        });




        CreateAccountButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v)
            {
                CreateNewAccount();

            }
        });

    }

    private void CreateNewAccount()
    {
        String email = UserEmail.getText().toString();
        String password = UserPassword.getText().toString();


        if (TextUtils.isEmpty(email))
        {
            Toast.makeText(this, "Please enter your Email", Toast.LENGTH_SHORT).show();
        }

        if (TextUtils.isEmpty(password))
        {
            Toast.makeText(this, "Please enter your Password", Toast.LENGTH_SHORT).show();
        }
        else
        {
            loadingBar.setTitle("Creating New Account");
            loadingBar.setMessage("Please wait, while we are creating new account for you");
            loadingBar.setCanceledOnTouchOutside(true);
            loadingBar.show();

            mAuth.createUserWithEmailAndPassword(email, password).addOnCompleteListener(new OnCompleteListener<AuthResult>() {
                @Override
                public void onComplete(@NonNull Task<AuthResult> task)
                {
                    if (task.isSuccessful())
                    {
                        SendUserToLoginActivity();
                        Toast.makeText(RegisterActivity.this, "Account Created Successfully", Toast.LENGTH_SHORT).show();
                        loadingBar.dismiss();
                    }
                    else
                    {
                        String message = task.getException().toString();
                        Toast.makeText(RegisterActivity.this, "Error: " + message, Toast.LENGTH_SHORT).show();
                        loadingBar.dismiss();
                    }

                }
            });
        }

    }

    private void InitializeFields()
    {
        CreateAccountButton = (Button) findViewById(R.id.register_button);
        UserEmail = (EditText) findViewById(R.id.register_email);
        UserPassword = (EditText) findViewById(R.id.register_password);
        AlreadyHaveAccountLink = (TextView) findViewById(R.id.already_have_account_link);

        loadingBar = new ProgressDialog(this);

    }

    private void SendUserToLoginActivity()
    {
        Intent loginIntent = new Intent(RegisterActivity.this, LoginActivity.class);
        startActivity(loginIntent);
    }
}

共有1个答案

尉迟龙光
2023-03-14
@Override
public void onCreate() {
super.onCreate();
FirebaseApp.initializeApp(this);

//rest of the code
}
 类似资料:
  • 我正在Eclipse中创建一个应用程序,现在我想在我的项目中使用appcompat库。我已经成功地导入了这个库,当我用AppCompatActivity扩展一些活动时,它工作得很好。问题是,当我运行应用程序时,我的应用程序启动由AppCompActivty扩展的活动。应用程序崩溃。Log Cat正在显示NoClassDefFoundError:请为我指引正确的方向。谢谢

  • 我正在尝试将图像添加到我新创建的应用程序中。但是,当我运行我的应用程序时,它会崩溃。我没有在我的应用程序中编写任何代码,因此我提供了XML代码和错误日志。我在以前的应用程序中使用了ImageViews。没有错误。我已经优化了我的图像,但它仍然给我错误。 图像详细信息 错误日志: 09-08 16:03:02.266 15137-15137/ooper.loopE/AndroidRuntime: F

  • 当我运行应用程序并转到用户的活动时,应用程序崩溃,显示mUsersList。setHasFixedSize(真);正在使应用程序崩溃。 这是消息“由以下原因引起:java.lang.NullPointerException:尝试在空对象引用上调用虚拟方法'void androidx.recyclerview.widget.recyclerview.setHasFixedSize(布尔)'”

  • 问题内容: 当我尝试访问Flask应用程序时,该应用程序崩溃了。 这类似于this或this。但是,我的设置似乎正确。 flask.cli.NoAppException:提供的文件/路径(服务器)似乎不存在。请确认路径正确。如果应用不在PYTHONPATH上,请确保扩展名为.py 我的环境变量设置正确。 我的服务器文件是y目录中没有任何文件。 我不记得对代码进行任何特殊更改。该错误可能来自哪里?

  • 在以前的代码上,谁医生帮了我 现在,android应用程序在我的手机上运行时崩溃了,这是错误日志 第一个问题是在我用相机扫描二维码后,它不能显示在二维码的结果进入 第二个问题是,我从存储器中选择了一个QRcode图像,然后点击确认,它崩溃了 下面是我认为的问题 类型不匹配:推断的类型是Uri?但乌里是意料之中的 冗余SAM构造函数 'onRequestPermissionsResult(Int,数

  • 问题内容: 我的应用程序中的函数出现崩溃(来自Crashlytics,无法在本地重现): 由于我自己无法重现此错误,并且无法使用CoordinatorLayouts进行6个活动,因此如何进行调试? 编辑 :看起来它将在下一个支持库版本中修复 问题答案: 我遇到了类似的问题,因此降级到较旧的Android支持库版本(v24.1.1)对我来说很有用。库中似乎有问题,您可以在此处查看 Android I