AAndroid Expert·3d agoOne Snackbar, Three Streams: Choosing Between StateFlow, SharedFlow, and ChannelWhy your snackbar fires twice after rotation, and how to choose the right stream for UI state, one-shot events, event buses, and queues.16 min read·android-expert.hashnode.dev
AAndroid Expert·3d agoCancelled by a Sibling: How Failure Travels Through the Coroutine Job TreeA field guide to Job hierarchies, why SupervisorJob exists, and the supervisorScope mistakes that quietly bring the bug back.15 min read·android-expert.hashnode.dev
AAndroid Expert·3d agoThe Stack Trace That Blamed the Wrong Screen: Making Rethrown Coroutine Exceptions Traceable on AndroidHow StackTraceRecoverable restores lost caller frames in Kotlin coroutines, and why it only works in debug, QA, and test builds.15 min read·android-expert.hashnode.dev