<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Android Seeker</title><description>Notes on the Android framework — runtime, UI, concurrency, and build — from first principles.</description><link>https://androidseeker-dev.pages.dev/</link><item><title>Animation Patterns: Which Tool Fits Which Animation</title><link>https://androidseeker-dev.pages.dev/blog/compose-animation-decisions/</link><guid isPermaLink="true">https://androidseeker-dev.pages.dev/blog/compose-animation-decisions/</guid><description>Which animation tool to reach for - built-in animate*AsState, Modifier.Node, or a wrapper - mapped to value-change, triggered, and continuous animations, with code.</description><pubDate>Tue, 12 May 2026 00:00:00 GMT</pubDate></item><item><title>Compose: Component Identity, the Slot Table, and State Lifecycle</title><link>https://androidseeker-dev.pages.dev/blog/compose-component-identity/</link><guid isPermaLink="true">https://androidseeker-dev.pages.dev/blog/compose-component-identity/</guid><description>How Compose tracks composable identity through the slot table, how remember and key() really work, and the only three ways state ever resets.</description><pubDate>Sun, 26 Apr 2026 00:00:00 GMT</pubDate></item><item><title>Custom Modifiers with Modifier.Node</title><link>https://androidseeker-dev.pages.dev/blog/compose-custom-modifiers/</link><guid isPermaLink="true">https://androidseeker-dev.pages.dev/blog/compose-custom-modifiers/</guid><description>Building production custom modifiers from three pieces - an extension function, a ModifierNodeElement, and a Modifier.Node - with real lifecycle and in-place updates.</description><pubDate>Sat, 02 May 2026 00:00:00 GMT</pubDate></item><item><title>The Compose Measure Phase: Measurable, Constraints, Placeable, layout(), place()</title><link>https://androidseeker-dev.pages.dev/blog/compose-measure-phase/</link><guid isPermaLink="true">https://androidseeker-dev.pages.dev/blog/compose-measure-phase/</guid><description>The measure phase as a top-down conversation: the parent hands a child a Constraints budget, the child returns a sized Placeable, and the layout between can rewrite both.</description><pubDate>Sun, 03 May 2026 00:00:00 GMT</pubDate></item><item><title>Modifiers vs Single-Child Wrapper Composables</title><link>https://androidseeker-dev.pages.dev/blog/compose-modifiers-vs-single-child-wrappers/</link><guid isPermaLink="true">https://androidseeker-dev.pages.dev/blog/compose-modifiers-vs-single-child-wrappers/</guid><description>Why a Modifier.foo() beats a Foo { content } wrapper for decorating a single child: preserved node identity, flat chaining, and fewer layout nodes.</description><pubDate>Sun, 26 Apr 2026 00:00:00 GMT</pubDate></item><item><title>When (and When Not) to Write a Custom Modifier.Node</title><link>https://androidseeker-dev.pages.dev/blog/compose-when-to-use-custom-modifiers/</link><guid isPermaLink="true">https://androidseeker-dev.pages.dev/blog/compose-when-to-use-custom-modifiers/</guid><description>A decision framework for choosing between built-in modifiers, lambda modifiers, wrapper composables, effects, and a full Modifier.Node - grounded in Compose internals.</description><pubDate>Sun, 10 May 2026 00:00:00 GMT</pubDate></item></channel></rss>