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

Android电子邮件和密码认证应用程序崩溃

索令
2023-03-14
package company.pawelzielinski.drdtr;

import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.design.widget.FloatingActionButton;
import android.support.design.widget.Snackbar;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.text.TextUtils;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
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 register_with_firebase extends AppCompatActivity {

    EditText email,password;
    Button registerButton;
    FirebaseAuth firebaseAuth;
    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_register_with_firebase);

        email = (EditText) findViewById(R.id.email_firebase_register);
        password = (EditText) findViewById(R.id.password_firebase_register);
        registerButton = (Button) findViewById(R.id.register_button);


        firebaseAuth = FirebaseAuth.getInstance();

        registerButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                String email_string = email.getText().toString();
                String password_string = password.getText().toString();

                if(TextUtils.isEmpty(email_string)){
                    Toast.makeText(getApplicationContext(),"Please fill in the required fields", Toast.LENGTH_SHORT).show();
                    return;
                }
                if(TextUtils.isEmpty(password_string)){
                    Toast.makeText(getApplicationContext(),"Please fill in the required fields",Toast.LENGTH_SHORT).show();
                }

                if(password_string.length()<7){
                    Toast.makeText(getApplicationContext(),"Password must be at least 6 characters",Toast.LENGTH_SHORT).show();
                }

                firebaseAuth.createUserWithEmailAndPassword(email_string,password_string)
                        .addOnCompleteListener(new OnCompleteListener<AuthResult>() {
                            @Override
                            public void onComplete(@NonNull Task<AuthResult> task) {
                                if(task.isSuccessful()){
                                    startActivity(new Intent(getApplicationContext(),register_window.class));
                                    finish();
                                }
                                else{
                                    Toast.makeText(getApplicationContext(),"E-mail or password is wrong",Toast.LENGTH_SHORT).show();
                                }
                            }
                        });
            }
        });


        if(firebaseAuth.getCurrentUser()!=null){
           startActivity(new Intent(getApplicationContext(),main_menu_in_game.class));
        }
    }
}
implementation 'com.android.support:appcompat-v7:28.0.0-rc02'
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
implementation 'com.android.support:design:28.0.0-rc02'
implementation 'com.squareup.retrofit2:retrofit:2.4.0'
implementation 'com.squareup.retrofit2:converter-gson:2.3.0'
implementation 'com.android.support:support-v4:28.0.0'
implementation 'com.google.firebase:firebase-auth:11.6.0'
implementation 'com.google.firebase:firebase-database:11.8.0'
implementation 'com.google.firebase:firebase-firestore:11.8.0'
testImplementation 'junit:junit:4.12'

implementation 'com.android.volley:volley:1.1.1'
implementation 'com.squareup.okhttp3:logging-interceptor:3.3.1'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
implementation 'com.google.firebase:firebase-core:16.0.1'
repositories {
    google()
    jcenter()
}
dependencies {
    classpath 'com.android.tools.build:gradle:3.1.4'
    classpath 'com.google.gms:google-services:4.1.0'


    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
    classpath 'com.google.gms:google-services:3.1.1'
} }

任务清理(类型:Delete){Delete RootProject.BuildDir}

共有1个答案

陈野
2023-03-14
    buildscript {

        repositories {
            google()
            jcenter()
        }
        dependencies {
            classpath 'com.android.tools.build:gradle:3.0.1'
            classpath 'com.google.gms:google-services:4.1.0'


            // NOTE: Do not place your application dependencies here; they belong
            // in the individual module build.gradle files
        }
    }


    allprojects {
        repositories {
            google()
            jcenter()
        }
    }

    task clean(type: Delete) {
        delete rootProject.buildDir
    }
 implementation 'com.google.firebase:firebase-auth:16.0.4'
 implementation 'com.google.firebase:firebase-database:16.0.3'
 implementation 'com.google.firebase:firebase-firestore:17.1.1'
 类似资料:
  • 最近为我的应用程序创建了一个简单的注册页面,该页面接受电子邮件和密码这两个值,检查它们是否有效,然后将它们传递给firebase函数来创建用户。值被正确传递,然而,我总是得到消息说“注册失败”。firebase连接是活动的,我已经允许用户使用电子邮件和密码认证注册。 我觉得这是我的文件的一个问题,可能有错误的依赖关系,但是,我是Firebase的新手,无法解决这个问题。 下面是我的注册表单,bui

  • 主要内容:创建用户,登录,注销在本章中,我们将向您介绍如何使用Firebase电子邮件/密码身份验证。在开始之前,需要设置登录方法,参考以下图所示 - 点击设置登录方法,然后选择电子邮件地址/密码,打开启用并保存,如下图所示 - 创建用户 要验证用户,可以使用方法。 示例 让我们来看看下面的一个例子。参考代码 - 接下来,您可以检查Firebase仪表板中的数据库,并查看用户是否已创建成功。如下所示,已经创建了一个用户账号 -

  • 每当我在Firebase中使用电子邮件/密码身份验证提供程序时,提供程序都会在成功注册时发送一个无记名令牌,即使是。是否有一种开箱即用的方法将电子邮件/密码身份验证提供程序配置为在用户验证其电子邮件地址之前不发送无记名令牌(并返回403错误)? 请注意,我知道如何创建用户、登录用户、发送验证电子邮件等。。。使用firebase v9。x通过firebase/auth中的方法创建用户(使用Email

  • 我正在尝试创建一个flutter应用程序,在创建一个用户的电子邮件/密码后,他们被保存在firebase,然后用户输入他的电话号码,发送OTP和用户在验证后登录。我的问题是,当这两个步骤都完成时,firebase正在创建两个单独的帐户,一个是电子邮件帐户,另一个是电话帐户。请告诉我如何创建一个既有电子邮件/密码又有电话的单一帐户。我还想同时使用电子邮件/密码或电话登录。或任何其他方式创建具有电子邮