Callback으로 받은 데이터를 Coroutines에서 활용하는 방법! Flow 활용
Callback Listener에서 전달되어오는 값을 Coroutines Flow에 전달하려면 어떻게 할 수 있을까?에서 시작한 고민을 글로 정리해 둔다.
이 글은 Flow에 대한 설명을 하지는 않을 것이지만 이를 해결하기 위해 사용한 방법은 아래와 같다.
- Callback으로 들어온 값은 Coroutines의 suspend가 아니다.
- flow에 emit 하려면 suspend 내에 있어야 한다.
- SharedFlow와 StateFlow을 사용할 순 있다.
이 글은 방안에 대한 정리만 한 것일 뿐 전반적인 설명을 담고 있지는 않다. 그러니 참고용으론 활용할 수 있겠지 만 잘 이해하지 못하고 사용한다면 사용치 않는 것을 권장한다.
이 글에 도움 될 링크는 아래와 같다.
이 글에서 알아볼 내용
- Callback으로 들어온 값을 Coroutines에 던져 처리하기 위한 방법을 설명한다.
- SharedFlow와 StateFlow를 통한 해결 방법을 알아본다.