-
Notifications
You must be signed in to change notification settings - Fork 2
Sign 로그인, 회원가입
Jo Hyun Jin edited this page Jan 15, 2021
·
2 revisions
-
온보딩에서 사용자가 선택한 깊이에 따라 메인로그인뷰의 Background Color 변경
- 기본(default)는 1,005m 깊이의 배경색으로 지정
val depth = intent.getIntExtra("deep", 5) setDepthBackground(depth)
- 기본(default)는 1,005m 깊이의 배경색으로 지정
-
이메일 로그인 - MOMO 자체 로그인 기능
- response.code()가 200일 때 : 로그인, SharedPreferences에 토큰과 userId 저장
- response.code()가 400일 때 : 존재하지 않는 회원일 경우 에러메시지 띄우기
private fun postLogin() {
RequestToServer.service.postLogin(
RequestUserData(
email = binding.etEmail.text.toString(),
password = binding.etPasswd.text.toString()
)
).enqueue(object : Callback<ResponseUserData> {
override fun onResponse(
call: Call<ResponseUserData>,
response: Response<ResponseUserData>
) {
when {
response.code() == 200 -> {
// 토큰 저장
SharedPreferenceController.setAccessToken(applicationContext, response.body()!!.data.token)
// 유저 아이디 저장
SharedPreferenceController.setUserId(applicationContext, response.body()!!.data.user.id)
// 홈으로 이동
val intent = Intent(applicationContext, HomeActivity::class.java)
startActivity(intent)
finishAffinity()
}
response.code() == 400 -> {
Log.d("postSignUp 400", response.message())
binding.etEmail.isCursorVisible = false
binding.etPasswd.isCursorVisible = false
if(binding.etEmail.text.isNotEmpty() || binding.etPasswd.text.isNotEmpty()) {
binding.etEmail.unshowKeyboard()
binding.tvLoginAlert.setVisible()
}
}
else -> {
Log.d("postSignUp 500", response.message())
}
}
}
override fun onFailure(call: Call<ResponseUserData>, t: Throwable) {
Log.d("postLogin ERROR", "$t")
}
})
}
- 아이디, 비밀번호, 비밀번호 확인, 약관동의 체크박스 각각의 에러메시지를 컨트롤러(함수)로 만들어서 체크
- 버튼 눌렀을 때와 다음 칸으로 이동했을 때 모두 에러 체크