일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 안드로이드
- navigation
- android
- 자바
- EventEmitter
- SlidingRootNav
- android list
- HTTP
- 알고리즘
- recyclerview
- Java 지네릭스(Generics)에 대하여 알아보겠습니다.
- databinding
- 네이게이션 드로우
- node.js
- 라이브러리
- 백준
- Today
- Total
삽질개발
[Mindev 개발공부]Android 20분만에 채팅App만들기 -Firebase(3) 본문
저번시간에 회원가입성공 까지 하였고 이제 회원가입이 성공하였으니 로그인과정을 알아보겠습니다.
저번시간에 로그인화면 XML을 만들어보았었습니다.
이제 그부분에서 작업을 시작하겠습니다.
먼저 각각 ID먼저 선언부터 하도록하겠습니다.
-아래 코드는 MainActivity 에서 이루어지는 작업입니다.
private Button login;
private EditText edittext_id, edittext_pw;
edittext_id = (EditText) findViewById(R.id.edittext_id);
edittext_pw = (EditText) findViewById(R.id.edittext_password);
login = (Button) findViewById(R.id.loginActivity_button_login);
전역변수를 선언후 ID를 선언해주었습니다.
각각 email,password,login 버튼입니다.
이후 login 버튼을 눌렀을떄 onClick 이벤트 리스너들 선언후 이안에서 정보의 유무를 판단하겠습니다.
login.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
}
});
먼저 아무것도 입력하지않았을때의 예외처리를 먼저 해주겠습니다.
if (edittext_id.getText().toString().isEmpty() || edittext_pw.getText().toString().isEmpty()) {
Toast.makeText(getApplicationContext(), "입력 사항을 확인해보세요.", Toast.LENGTH_LONG).show();
return;
}
각각의 입력값이 빈값이면 Toast 메세지로 입력후 return 을 해주게됩니다.
이제 로그인에 필요한 FirebaseAuth 선언해줍니다.
private FirebaseAuth mAuth;
mAuth = FirebaseAuth.getInstance();
이제 mAuth를 통해 정보가 맞는지 틀린지 확인해보겠습니다.
onClick 리스너안에서 정의해줍니다.
mAuth.signInWithEmailAndPassword(edittext_id.getText().toString(), edittext_pw.getText().toString())
.addOnCompleteListener(LoginActivity.this, new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
}
});
이메일과 비밀번호를 넣어주며 addOnCompleteListener 리스너로 성공유무의 값을 확인합니다.
mAuth.signInWithEmailAndPassword(edittext_id.getText().toString(), edittext_pw.getText().toString())
.addOnCompleteListener(LoginActivity.this, new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
if (task.isSuccessful()) {
startActivity(new Intent(MainActivity.this, Chat.class));
finish();
} else {
Toast.makeText(getApplicationContext(), "실패하였습니다.", Toast.LENGTH_SHORT).show();
}
}
});
성공시 Chat Activity를 만들어주고 성공시 이동시킵니다.
다음글은 채팅구성에대해서 알아보겠습니다.
아래는 저의 github 주소입니다.
'Android' 카테고리의 다른 글
[Mindev 개발공부]안드로이드 이미지 크랍 Cropper(Library) (5) | 2018.02.22 |
---|---|
[Mindev 개발공부]Android 20분만에 채팅App만들기 -Firebase(4) (0) | 2017.09.25 |
[Mindev 개발공부]Android 20분만에 채팅App만들기 -Firebase(2) (3) | 2017.09.19 |
[Mindev 개발공부]Android 20분만에 채팅App만들기 -Firebase(1) (0) | 2017.09.19 |
[Mindev 개발공부]Android SlidingRootNav Drawer 라이브러리 소개합니다. (0) | 2017.09.04 |