Yeah also important to note that these things can be quite different from each other.
Understanding Flows and coroutines is one thing, and understanding compose state is another. Then putting them together is yet another.
Iâd suggest you try and understand Flows first, and then the rest will fall into place. Especially since you say that you also have issues understanding Room, which I assume again itâs the flows part of it.
You can completely skip LiveData I think at this point, at least weâve done that on our project.
And as far as sources go, not sure, the official android docs are great in general imo, but one thing that stood out for me was this series
https://code.cash.app/rx-to-coroutines-concepts. I donât even know RX, but still this let me understand a bunch of things about coroutines.