로그인 성공 후 메인 화면 이동을 통일한다
이메일 로그인과 소셜 로그인의 성공 이후 이동 동작을 일관되게 맞춘다. 모든 로그인 방식에서 동일한 화면 전환 플래그를 적용한다.
This commit is contained in:
@@ -77,20 +77,7 @@ class LoginActivity : BaseActivity<ActivityLoginBinding>(ActivityLoginBinding::i
|
|||||||
identityToken = identityToken,
|
identityToken = identityToken,
|
||||||
nonce = lineLoginNonce
|
nonce = lineLoginNonce
|
||||||
) {
|
) {
|
||||||
finishAffinity()
|
navigateToMain()
|
||||||
val nextIntent = Intent(applicationContext, MainActivity::class.java)
|
|
||||||
val extras = intent.getBundleExtra(Constants.EXTRA_DATA)
|
|
||||||
?: if (intent.extras != null) {
|
|
||||||
intent.extras
|
|
||||||
} else {
|
|
||||||
null
|
|
||||||
}
|
|
||||||
if (extras != null) {
|
|
||||||
nextIntent.putExtra(Constants.EXTRA_DATA, extras)
|
|
||||||
}
|
|
||||||
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)
|
|
||||||
intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP)
|
|
||||||
startActivity(nextIntent)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -181,20 +168,7 @@ class LoginActivity : BaseActivity<ActivityLoginBinding>(ActivityLoginBinding::i
|
|||||||
// Create Google ID Token
|
// Create Google ID Token
|
||||||
val googleIdTokenCredential = GoogleIdTokenCredential.createFrom(credential.data)
|
val googleIdTokenCredential = GoogleIdTokenCredential.createFrom(credential.data)
|
||||||
viewModel.googleLogin(idToken = googleIdTokenCredential.idToken) {
|
viewModel.googleLogin(idToken = googleIdTokenCredential.idToken) {
|
||||||
finishAffinity()
|
navigateToMain()
|
||||||
val nextIntent = Intent(applicationContext, MainActivity::class.java)
|
|
||||||
val extras = intent.getBundleExtra(Constants.EXTRA_DATA)
|
|
||||||
?: if (intent.extras != null) {
|
|
||||||
intent.extras
|
|
||||||
} else {
|
|
||||||
null
|
|
||||||
}
|
|
||||||
if (extras != null) {
|
|
||||||
nextIntent.putExtra(Constants.EXTRA_DATA, extras)
|
|
||||||
}
|
|
||||||
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)
|
|
||||||
intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP)
|
|
||||||
startActivity(nextIntent)
|
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
showToast(getString(R.string.login_failed))
|
showToast(getString(R.string.login_failed))
|
||||||
@@ -205,20 +179,7 @@ class LoginActivity : BaseActivity<ActivityLoginBinding>(ActivityLoginBinding::i
|
|||||||
private fun login() {
|
private fun login() {
|
||||||
viewModel.login {
|
viewModel.login {
|
||||||
it?.let { Toast.makeText(applicationContext, it, Toast.LENGTH_LONG).show() }
|
it?.let { Toast.makeText(applicationContext, it, Toast.LENGTH_LONG).show() }
|
||||||
finishAffinity()
|
navigateToMain()
|
||||||
val nextIntent = Intent(applicationContext, MainActivity::class.java)
|
|
||||||
val extras = intent.getBundleExtra(Constants.EXTRA_DATA)
|
|
||||||
?: if (intent.extras != null) {
|
|
||||||
intent.extras
|
|
||||||
} else {
|
|
||||||
null
|
|
||||||
}
|
|
||||||
if (extras != null) {
|
|
||||||
nextIntent.putExtra(Constants.EXTRA_DATA, extras)
|
|
||||||
}
|
|
||||||
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)
|
|
||||||
intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP)
|
|
||||||
startActivity(nextIntent)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -306,20 +267,7 @@ class LoginActivity : BaseActivity<ActivityLoginBinding>(ActivityLoginBinding::i
|
|||||||
|
|
||||||
private fun handleKakaoLogin(token: OAuthToken) {
|
private fun handleKakaoLogin(token: OAuthToken) {
|
||||||
viewModel.kakaoLogin(accessToken = token.accessToken) {
|
viewModel.kakaoLogin(accessToken = token.accessToken) {
|
||||||
finishAffinity()
|
navigateToMain()
|
||||||
val nextIntent = Intent(applicationContext, MainActivity::class.java)
|
|
||||||
val extras = intent.getBundleExtra(Constants.EXTRA_DATA)
|
|
||||||
?: if (intent.extras != null) {
|
|
||||||
intent.extras
|
|
||||||
} else {
|
|
||||||
null
|
|
||||||
}
|
|
||||||
if (extras != null) {
|
|
||||||
nextIntent.putExtra(Constants.EXTRA_DATA, extras)
|
|
||||||
}
|
|
||||||
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)
|
|
||||||
intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP)
|
|
||||||
startActivity(nextIntent)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -352,4 +300,21 @@ class LoginActivity : BaseActivity<ActivityLoginBinding>(ActivityLoginBinding::i
|
|||||||
}
|
}
|
||||||
startActivity(nextIntent)
|
startActivity(nextIntent)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private fun navigateToMain() {
|
||||||
|
finishAffinity()
|
||||||
|
val nextIntent = Intent(applicationContext, MainActivity::class.java)
|
||||||
|
val extras = intent.getBundleExtra(Constants.EXTRA_DATA)
|
||||||
|
?: if (intent.extras != null) {
|
||||||
|
intent.extras
|
||||||
|
} else {
|
||||||
|
null
|
||||||
|
}
|
||||||
|
if (extras != null) {
|
||||||
|
nextIntent.putExtra(Constants.EXTRA_DATA, extras)
|
||||||
|
}
|
||||||
|
nextIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)
|
||||||
|
nextIntent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP)
|
||||||
|
startActivity(nextIntent)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user