Skip to content

[FEAT/#239] 스플래시, 약관동의 내부 로직 구현#263

Merged
Hyobeen-Park merged 7 commits intodevelopfrom
feat/#239-splash-check-token
May 6, 2025
Merged

[FEAT/#239] 스플래시, 약관동의 내부 로직 구현#263
Hyobeen-Park merged 7 commits intodevelopfrom
feat/#239-splash-check-token

Conversation

@Hyobeen-Park
Copy link
Copy Markdown
Collaborator

@Hyobeen-Park Hyobeen-Park commented May 3, 2025

Related issue 🛠

Work Description ✏️

  • 토큰 dataStore 구현
  • 스플래시에서 토큰 저장 여부 확인
  • 약관동의 확인 + 웹 연결 구현

Screenshot 📸

Screen_Recording_20250504_003047.mp4

Uncompleted Tasks 😅

로그인 서버 연결 해야해요...

To Reviewers 📢

약관동의에서 뒤로가면 앱 꺼지는걸로 수정했습니다! 영상 녹화,,, 다시 안해도 되죠ㅎㅎㅎㅎ
그리고 dataStore 만들면서 local이랑 remote랑 구분을 해두는게 어떨까 싶어서 local패키지를 만들어봤어요! 다들 뭐가 더 좋은지 의견이 궁금합니다ㅎㅎ

오늘의 TMI: 민재오빠 리드미 바꿈

@Hyobeen-Park Hyobeen-Park added ❤️효빈❤️ ❤️효빈❤️ FEAT✨ 새로운 기능 구현 labels May 3, 2025
@Hyobeen-Park Hyobeen-Park added this to the 2차 스프린트 milestone May 3, 2025
@Hyobeen-Park Hyobeen-Park self-assigned this May 3, 2025
@Hyobeen-Park Hyobeen-Park requested a review from a team as a code owner May 3, 2025 15:41
@Hyobeen-Park Hyobeen-Park requested review from Roel4990, angryPodo and chattymin and removed request for a team May 3, 2025 15:41
Copy link
Copy Markdown
Collaborator

@chattymin chattymin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!!!!!

Comment on lines +36 to +41
SpoonyTerms(
title = "만 14세 이상입니다.",
link = "https://github.com/Hyobeen-Park",
isRequired = true,
isUnderlined = false
),
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

p3
이건 링크 필요없어보이는데 위에 data class에 link를 nullable하게 하는건 어떠신지?

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

그렇게 하면 Link가 있으면 underline 이런식으로 로직 만들어서 isUnderlined 변수도 없앨수 있을듯~

Copy link
Copy Markdown
Collaborator Author

@Hyobeen-Park Hyobeen-Park May 6, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

링크 필요 없는거 맞아요! ""로 넣는 것보다 null로 해두는게 더 명시적인 것 같아서 수정하겠습니다! isUnderlined는 링크가 없어도 underline이 적용되어 있는 아이템이 생길수도 있으니까~ 하면서 나눴는데 생각해보니 그런일은 있어서는 안되는 일이네요..ㅋㅋ 호다닥 합쳐야징

navigateToMap: () -> Unit
) {
val context = LocalContext.current
val isChecked = remember { mutableStateListOf(*Array(termsList.size) { false }) }
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

p4
혹시 스프래드 연산자 꼭 써야하나용?? 진짜 몰라서 물어봄

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

각 약관들의 동의 여부를 약관 데이터가 직접 가지고 있는 것이 아니라 따로 분리된 리스트로 관리하려고 사용했습니다!

lifecycleOwner.lifecycleScope.launch {
delay(1000)
navigateToSignIn()
delay(300)
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

p4
마지막으로 기억하는게 스플레시에서는 디폴트 딜레이 안거는 거였는데 혹시 변경됐나요??
그렇다면 죄송합니다...

Copy link
Copy Markdown
Collaborator Author

@Hyobeen-Park Hyobeen-Park May 6, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

오 예리한데요?? 스플래시에 딜레이 안거는거 맞아요! 근데 없이 해보니까 토큰 확인하는게 너무 빨라서 스플래시 화면이 진짜 0.001초정도 보이고 바로 사라지는거에요 그랬더니 너무 앱이 버그 걸린 것 같은 느낌인거에요 그래서 그냥 300만 넣었어요....ㅎㅎ

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

근데 걍 없앨래잉

Copy link
Copy Markdown
Member

@angryPodo angryPodo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM~~ 고생하셨습니다. 토큰 관련 코드 슥슥 배우고 가요~🙇🏻‍♂️

import dagger.hilt.components.SingletonComponent
import javax.inject.Singleton

private val Context.tokenDataStore: DataStore<Preferences> by preferencesDataStore(name = "token_preferences")
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

p4 : "token_preferences" 이것도 상수 분리해야할까...

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

흠 큰 상관은 없을 것 같긴 한데 일단 할게요ㅋㅋ

.padding(bottom = 16.dp)
)
termsList.forEachIndexed { index, term ->
with(term) {
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

난 아직도 with를 잘 모르겠어,,,

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@angryPodo with, apply, also, let, run 공부해오기~

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

바아로 숙제 투척ㄷㄷ

},
onTitleClick = {
if (link.isNotBlank()) {
Intent(Intent.ACTION_VIEW, Uri.parse(link)).apply {
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Intent(Intent.ACTION_VIEW, Uri.parse(link)).apply {
Intent(Intent.ACTION_VIEW, link.toUri()).apply {

요렇게?

Copy link
Copy Markdown
Member

@Roel4990 Roel4990 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 다른 분들이 잘 봐주셨네요! 수고하셨습니다!

@Hyobeen-Park Hyobeen-Park merged commit 5a432b5 into develop May 6, 2025
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

FEAT✨ 새로운 기능 구현 ❤️효빈❤️ ❤️효빈❤️

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[FEAT] 스플래시, 로그인, 약관동의 내부 로직 구현

4 participants