Skip to content

Commit 4b9d40d

Browse files
committed
Fix: 카카오 로그인 무한 호출 버그 수정
- 로그인 취소 시 의도적인 취소라 판단하여 취소 분기 제거 - 카카오 계정 로그인 sideEffect 제거
1 parent 3bea2f7 commit 4b9d40d

3 files changed

Lines changed: 1 addition & 20 deletions

File tree

presentation/src/main/java/com/threegap/bitnagil/presentation/login/LoginScreen.kt

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -44,12 +44,6 @@ fun LoginScreenContainer(
4444

4545
viewModel.collectSideEffect { sideEffect ->
4646
when (sideEffect) {
47-
is LoginSideEffect.RequestKakaoAccountLogin -> {
48-
KakaoLoginHandlerImpl.accountLogin(context) { token, error ->
49-
viewModel.kakaoLogin(token, error)
50-
}
51-
}
52-
5347
is LoginSideEffect.NavigateToHome -> {
5448
navigateToHome()
5549
}

presentation/src/main/java/com/threegap/bitnagil/presentation/login/LoginViewModel.kt

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,7 @@ import android.util.Log
44
import androidx.lifecycle.SavedStateHandle
55
import androidx.lifecycle.viewModelScope
66
import com.kakao.sdk.auth.model.OAuthToken
7-
import com.kakao.sdk.common.model.ClientError
8-
import com.kakao.sdk.common.model.ClientErrorCause
97
import com.threegap.bitnagil.domain.auth.usecase.LoginUseCase
10-
import com.threegap.bitnagil.domain.error.model.BitnagilError
118
import com.threegap.bitnagil.presentation.common.mviviewmodel.MviViewModel
129
import com.threegap.bitnagil.presentation.login.model.LoginIntent
1310
import com.threegap.bitnagil.presentation.login.model.LoginSideEffect
@@ -19,7 +16,7 @@ import javax.inject.Inject
1916

2017
@HiltViewModel
2118
class LoginViewModel @Inject constructor(
22-
private val savedStateHandle: SavedStateHandle,
19+
savedStateHandle: SavedStateHandle,
2320
private val loginUseCase: LoginUseCase,
2421
) : MviViewModel<LoginState, LoginSideEffect, LoginIntent>(
2522
initState = LoginState(),
@@ -49,7 +46,6 @@ class LoginViewModel @Inject constructor(
4946
}
5047

5148
is LoginIntent.KakaoTalkLoginCancel -> {
52-
sendSideEffect(LoginSideEffect.RequestKakaoAccountLogin)
5349
state.copy(isLoading = false)
5450
}
5551

@@ -66,11 +62,6 @@ class LoginViewModel @Inject constructor(
6662
processKakaoLoginSuccess(token)
6763
}
6864

69-
error is ClientError && error.reason == ClientErrorCause.Cancelled -> {
70-
Log.e("KakaoLogin", "카카오 로그인 취소", error)
71-
sendIntent(LoginIntent.KakaoTalkLoginCancel)
72-
}
73-
7465
error != null -> {
7566
Log.e("KakaoLogin", "카카오 로그인 실패", error)
7667
sendIntent(LoginIntent.LoginFailure)
@@ -90,9 +81,6 @@ class LoginViewModel @Inject constructor(
9081
},
9182
onFailure = { e ->
9283
sendIntent(LoginIntent.LoginFailure)
93-
if (e is BitnagilError) {
94-
Log.e("Login", "${e.code} ${e.message}")
95-
}
9684
Log.e("Login", "${e.message}")
9785
},
9886
)

presentation/src/main/java/com/threegap/bitnagil/presentation/login/model/LoginSideEffect.kt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ package com.threegap.bitnagil.presentation.login.model
33
import com.threegap.bitnagil.presentation.common.mviviewmodel.MviSideEffect
44

55
sealed interface LoginSideEffect : MviSideEffect {
6-
data object RequestKakaoAccountLogin : LoginSideEffect
76
data object NavigateToHome : LoginSideEffect
87
data object NavigateToTermsAgreement : LoginSideEffect
98
}

0 commit comments

Comments
 (0)