마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

조언해주신 코드를 손 봤는데 약간의 문제가 일어납니다.

0 추천
package com.hanseo_software.gpstrackerapp;

import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;

import android.app.ProgressDialog;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
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.FirebaseAuth;
import com.google.firebase.auth.SignInMethodQueryResult;

import java.util.List;

public class RegisterActivity extends AppCompatActivity {

    EditText e4_email;
    FirebaseAuth auth;
    ProgressDialog dialog;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_register);
        e4_email = (EditText)findViewById(R.id.editText4);
        auth = FirebaseAuth.getInstance();
        dialog = new ProgressDialog(this);

    }

//    public void goToPasswordActivtity(View v) {
//        Intent myIntent = new Intent(RegisterActivity.this, PasswordActivity.class);
//        startActivity(myIntent);
//    }

    public void goToPasswordActivtity(View v) {
        dialog.setMessage("checking email address");
        dialog.show();
         //이 이메일이 실제로 있는지 없는지 확인
        auth.fetchSignInMethodsForEmail(e4_email.getText().toString())
                .addOnCompleteListener(new OnCompleteListener<SignInMethodQueryResult>() {
                    @Override
                    public void onComplete(@NonNull Task<SignInMethodQueryResult> task) {
                        if (task.isSuccessful()) {
                            dialog.dismiss();
                            //boolean check = !task.getResult().getProviders().isEmpthy();
                            boolean check = !task.getResult().getSignInMethods().isEmpty();

                            if (!check) {
                            //if (task.getResult().getSignInMethods().size() == 0){
                                //email이 존재하지 않아서 생성할 수 있다.
                                Intent myIntent = new Intent(RegisterActivity.this, PasswordActivity.class);
                                myIntent.putExtra("eamil", e4_email.getText().toString());
                                startActivity(myIntent);
                                finish();

                            } else {
                                dialog.dismiss();
                                Toast.makeText(getApplicationContext(),"이 eamail은 이미 생성되어 있습니다.",Toast.LENGTH_LONG).show();
                            }
                        }
                    }
                });

    }
}

 

수정을 했더니 강제 종료가 발생하는데 왜 그런지 아시나요?
준톨이짱짱 (440 포인트) 님이 2020년 2월 16일 질문

1개의 답변

0 추천
에러로그는 어떻게뜨나요
공과근성 (6,020 포인트) 님이 2020년 2월 22일 답변
...