보통 sealed class 를 이용해서 각 이벤트마다 따로 묶어서 기능의 성격에 맞게 구분하는데
한 액티비티에 프래그먼트가 3개가 들어있는 화면이 있다고 가정하자
그리고 액티비티의 viewModel 을 모두가 공유하고 있는 상황일때
하나의 event flow 만을 이용해서 처리하면 각 프래그먼트에서 같은 flow 를 콜렉트 하는 상황이 생긴다.
이러면 다른 이벤트를 처리하기전 기존의 flow 를 해제해주지 않으면 한 곳에서 진행중인 collect 가
다른 프래그먼트로 가야할 데이터를 계속 가져가서 원하는 화면에서 원하는대로 동작하지 않는 상황이 생긴다.
그래서 내린 결론은 event flow 는 한 액티비티나 한 프래그먼트에서 즉, View 를 기준으로 같이 쓰이는 애들끼리 묶어서 따로 만들어주는게 관리하기도 편하고 예상치 못한 에러가 발생할 가능성도 낮다.
그냥 생각나서 끄적끄적
반응형
'Android' 카테고리의 다른 글
안드로이드 키보드 높이 구하기 (2) | 2024.04.29 |
---|---|
안드로이드에서 FFMPEG로 m3u8 to mp4 하기 (1) | 2023.12.02 |
Android Room Entity Relation (1) | 2023.12.02 |
라이브러리 배포 후 적용을 하려는데 NoClassDefFoundError ? (0) | 2023.11.16 |
MockK 를 사용해서 테스트 코드를 적어보자 (2) | 2023.05.14 |
android 12 블루투스 대응 (0) | 2023.04.06 |
Navigation Component 에서 그래프 여러개 관리하기 (0) | 2022.12.11 |
멀티모듈로 배포할때 파이어베이스 관련 이슈 (0) | 2022.11.06 |