Я не могу войтиВ нем сохраняется сообщение об ошибке, даже если я ввел адрес электронной почты и пароль при вводе в Firebase - PullRequest
0 голосов
/ 13 апреля 2019

Статус провайдера входа по электронной почте / паролю всегда был «Включен» с самого начала. но это все еще дает мне ту же ошибку. Даже из Аутентификации в Firebase видно, что 1. Подключите ваше приложение к Firebase -> Подключено (зеленая галочка) 2. Добавьте проверку подлинности Firebase в свое приложение -> Правильно настроенные зависимости (зеленая галочка)

Я попытался войти в систему с помощью электронной почты и пароля, которые я ввел в Firebase, но я все еще не могу войти. Это показывает мне тост:

Ошибка входа в систему: (

Я пытался найти решения из интернета. Это мой текущий код:

04-14 18:46:05.238 9631-9631/com.adrian.projectadrian E/Login Error: signInWithEmailAndPassword
    com.google.firebase.auth.FirebaseAuthException: The given sign-in provider is disabled for this Firebase project. Enable it in the Firebase console, under the sign-in method tab of the Auth section.
        at com.google.firebase.auth.api.internal.zzdr.zzb(Unknown Source)
        at com.google.firebase.auth.api.internal.zzey.zza(Unknown Source)
        at com.google.firebase.auth.api.internal.zzeo.zzc(Unknown Source)
        at com.google.firebase.auth.api.internal.zzeq.onFailure(Unknown Source)
        at com.google.firebase.auth.api.internal.zzdx.dispatchTransaction(Unknown Source)
        at com.google.android.gms.internal.firebase_auth.zza.onTransact(Unknown Source)
        at android.os.Binder.execTransact(Binder.java:453)
package com.adrian.projectadrian

import android.content.Intent
import android.support.v7.app.AppCompatActivity
import android.os.Bundle
import android.util.Log
import android.view.View
import android.widget.EditText
import android.widget.Toast
import com.google.android.gms.tasks.OnCompleteListener
import com.google.firebase.FirebaseApp
import com.google.firebase.auth.AuthResult
import com.google.firebase.auth.FirebaseAuth
import kotlinx.android.synthetic.main.activity_main.*

class MainActivity : AppCompatActivity() {
    var mAuth = FirebaseAuth.getInstance()

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        FirebaseApp.initializeApp(this)
        setContentView(R.layout.activity_main)

        login_btn.setOnClickListener(View.OnClickListener {
            login()
        })
    }

    private fun login() {
        val emailTxt = findViewById<View>(R.id.email) as EditText
        var email = emailTxt.text.toString()
        val passwordTxt = findViewById<View>(R.id.password) as EditText
        var password = passwordTxt.text.toString()
        if (!email.isEmpty() && !password.isEmpty()) {
            this.mAuth.signInWithEmailAndPassword(email, password)
                .addOnCompleteListener(this, OnCompleteListener<AuthResult> { task ->
                    if (task.isSuccessful) {
                        startActivity(Intent(this, home::class.java))
                        Toast.makeText(this, "Successfully Logged in :)", Toast.LENGTH_LONG).show()
                    } else {
                        Log.e("Login Error", "signInWithEmailAndPassword", task.getException())
                        Toast.makeText(this, "Error Logging in :(", Toast.LENGTH_SHORT).show()
                    }
                })

        } else {
            Toast.makeText(this, "Please fill up the Credentials :|", Toast.LENGTH_SHORT).show()
        }
    }
}

Ожидаемый результат: он может направить меня на домашнюю страницу.

Ответы [ 2 ]

1 голос
/ 13 апреля 2019

После вашего редактирования теперь мы можем видеть, что это сообщение об ошибке:

Данный провайдер входа отключен для этого проекта Firebase. Включите его в консоли Firebase на вкладке метода входа в разделе Auth.

Таким образом, вы не включили провайдера, с которым пытаетесь войти. Решение состоит в том, чтобы перейти к консоли аутентификации Firebase и включить этого провайдера.


Оригинальный ответ:

Если произошел сбой Task, он содержит исключение с подробной информацией о сбое. Вы должны зарегистрировать это исключение, чтобы выяснить причину неудачного входа.

this.mAuth.signInWithEmailAndPassword(email, password)
    .addOnCompleteListener(this, OnCompleteListener<AuthResult> { task ->
        if (task.isSuccessful) {
            startActivity(Intent(this, home::class.java))
            Toast.makeText(this, "Successfully Logged in :)", Toast.LENGTH_LONG).show()
        } else {
            Log.e("Login Error", "signInWithEmailAndPassword", task.getException());
            Toast.makeText(this, "Error Logging in :(", Toast.LENGTH_SHORT).show()
        }
    })

С помощью приведенного выше кода вы можете найти исключение в выводе logcat вашего приложения.

0 голосов
/ 14 апреля 2019

Итак, я скачал еще один

google-services.json

и заменил его на Dir

app

и заменил его на

    implementation 'com.google.firebase:firebase-auth:16.0.1'
    implementation 'com.google.firebase:firebase-core:16.0.1'

в моей сборке.gradle (Module: app), и это решило мою проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...