로그인 후 메인 전환 방식을 안정화한다
로그인과 회원가입 성공 이후 메인 이동 플로우를 통일한다. 태스크를 명시적으로 재구성해 기기별 종료처럼 보이는 현상을 줄인다. 메인 전환 인텐트에 Activity 컨텍스트를 사용하도록 정리한다.
This commit is contained in:
@@ -434,8 +434,7 @@ class LoginActivity : BaseActivity<ActivityLoginBinding>(ActivityLoginBinding::i
|
|||||||
}
|
}
|
||||||
|
|
||||||
private fun navigateToMain() {
|
private fun navigateToMain() {
|
||||||
finishAffinity()
|
val nextIntent = Intent(this@LoginActivity, MainActivity::class.java)
|
||||||
val nextIntent = Intent(applicationContext, MainActivity::class.java)
|
|
||||||
val extras = intent.getBundleExtra(Constants.EXTRA_DATA)
|
val extras = intent.getBundleExtra(Constants.EXTRA_DATA)
|
||||||
?: if (intent.extras != null) {
|
?: if (intent.extras != null) {
|
||||||
intent.extras
|
intent.extras
|
||||||
@@ -445,8 +444,9 @@ class LoginActivity : BaseActivity<ActivityLoginBinding>(ActivityLoginBinding::i
|
|||||||
if (extras != null) {
|
if (extras != null) {
|
||||||
nextIntent.putExtra(Constants.EXTRA_DATA, extras)
|
nextIntent.putExtra(Constants.EXTRA_DATA, extras)
|
||||||
}
|
}
|
||||||
nextIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)
|
nextIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
|
||||||
nextIntent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP)
|
nextIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK)
|
||||||
startActivity(nextIntent)
|
startActivity(nextIntent)
|
||||||
|
finish()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -70,18 +70,7 @@ class SignUpActivity : BaseActivity<ActivitySignupBinding>(ActivitySignupBinding
|
|||||||
hideKeyboard()
|
hideKeyboard()
|
||||||
viewModel.signUp {
|
viewModel.signUp {
|
||||||
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)
|
|
||||||
}
|
|
||||||
startActivity(nextIntent)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -161,4 +150,21 @@ class SignUpActivity : BaseActivity<ActivitySignupBinding>(ActivitySignupBinding
|
|||||||
null -> null
|
null -> null
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private fun navigateToMain() {
|
||||||
|
val nextIntent = Intent(this@SignUpActivity, 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_NEW_TASK)
|
||||||
|
nextIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK)
|
||||||
|
startActivity(nextIntent)
|
||||||
|
finish()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user