Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature] #76 암시적 인텐트를 통한 링크 저장 기능 구현 #77

Merged
merged 3 commits into from
Oct 8, 2024

Conversation

l5x5l
Copy link
Contributor

@l5x5l l5x5l commented Oct 6, 2024

Key Changes

  • 타 앱에서 공유하기를 통해 링크를 저장할 수 있는 기능을 구현했습니다.
  • 설정-로그아웃을 통해 로그인 화면으로 이동했을 때, 뒤로가기 클릭시 앱이 종료되지 않고 계속 로그인 화면이 반복적으로 표시되는 문제를 수정했습니다.
  • MainActivity에서 구현했던 복사된 링크를 처리하는 부분을 MainViewModel로 이동했습니다.

시연 영상 (순서대로 로그인/비로그인)

_.mp4
_.mp4

Resolves: #76

PR 유형

어떤 변경 사항이 있나요?

  • 새로운 기능 추가
  • 버그 수정
  • CSS 등 사용자 UI 디자인 변경
  • 코드에 영향을 주지 않는 변경사항(오타 수정, 탭 사이즈 변경, 변수명 변경)
  • 코드 리팩토링
  • 주석 추가 및 수정
  • 문서 수정
  • 테스트 추가, 테스트 리팩토링
  • 빌드 부분 혹은 패키지 매니저 수정
  • 파일 혹은 폴더명 수정
  • 파일 혹은 폴더 삭제

To Reviewers

  • 암시적 링크와 관련된 동작은 아래와 같이 이루어집니다.
    • 로그인이 되어있는 경우
      • 앱 진입(onCreate or onNewIntent)시 바로 링크 추가 화면으로 이동합니다.
    • 로그인이 되어있지 않은 경우
      • PendingSharedLinkManager에 가져온 링크를 저장합니다.
      • 이후 로그인이 완료되어 홈 화면으로 진입했을 때, PendingSharedLinkManager로부터 링크를 가져와 해당 링크에 대한 링크 추가 화면으로 이동합니다.
  • 로그인이 되어있는지 여부는 현재 화면이 로그인/회원가입 단계에 속하는지 여부로 판단했습니다.
  • 설정 화면에서 로그아웃을 클릭하여 로그인 화면으로 이동했을 때, 뒤로가기 클릭시 계속해서 로그인 화면이 반복적으로 표시되는 문제가 있어 수정했습니다.
    • 해당 문제는 popupTo에 인자로 전달한 id값으로 인한 문제로, popupTo의 경우 현재 backStack에서 id에 해당하는 route를 찾을 수 없다면 popupTo 동작을 무시하고 기본 navigate로 실행됩니다.
    • login화면의 경우 navigation의 startDestination이지만, 홈 화면으로 이동하는 과정에서 pop을 하고 홈 화면으로 이동하므로 backStack에는 존재하지 않게 됩니다. 이로 인해서 backStack에서 startDestinationId에 해당하는 route를 찾지 못해 popupTo 동작이 정상적으로 수행되지 않았습니다.
    • 위 문제는 startDestinationId 부분을 0으로 변경함으로써 (navBackStack을 살펴본 결과, root는 항상 0값을 가짐을 확인했습니다.) 수정했습니다.

PR Checklist

PR이 다음 요구 사항을 충족하는지 확인하세요.

  • 커밋 메시지 컨벤션에 맞게 작성했습니다.
  • 정해진 코딩 컨벤션에 맞게 작성했습니다.
  • 변경 사항에 대한 테스트를 했습니다.(버그 수정/기능에 대한 테스트)

Etc.

암시적 링크 처리하는 부분에 대해서 가독성이나 조금 더 개선할 부분이 있다면 피드백 부탁해!

@l5x5l l5x5l linked an issue Oct 6, 2024 that may be closed by this pull request
1 task
@l5x5l l5x5l requested a review from jiwon2724 October 6, 2024 09:47
@jiwon2724
Copy link
Member

세환 비로그인인 경우 UX까지 넘 좋은데?
곧 리뷰 남길겡

@ShapeKim98
Copy link

아니 님들 벌써 이만큼이나 하셨네여

Copy link
Member

@jiwon2724 jiwon2724 left a comment

Choose a reason for hiding this comment

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

고생하셨습니다~~ 따로 남길 부분은 없어보이네욤
머지 진행시켜~~!

@l5x5l l5x5l merged commit ae8e398 into develop Oct 8, 2024
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[FEATURE] 공유하기 암시적 인텐트 수신 이벤트 구현
3 participants