<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url><loc>https://zhuinden.medium.com/this-happens-if-your-custom-type-contains-an-uri-a6dcd966befb</loc><lastmod>2024-09-27</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/you-just-have-to-trigger-a-refetch-for-a-flow-to-have-this-problem-mutablesharedflow-flatmaplatest-c70beedd0377</loc><lastmod>2024-09-21</lastmod><changefreq>monthly</changefreq><priority>0.7</priority></url>
<url><loc>https://zhuinden.medium.com/the-goal-of-the-original-scenario-was-to-avoid-using-a-fragment-base-class-to-achieve-this-behavior-7e9b52166881</loc><lastmod>2022-11-01</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/nice-5d80a7650f00</loc><lastmod>2026-06-06</lastmod><changefreq>daily</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/quality-has-really-gone-downhill-recently-hasnt-it-491836893fba</loc><lastmod>2026-07-03</lastmod><changefreq>daily</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/what-you-called-helper-class-is-just-encapsulation-0649128d450e</loc><lastmod>2025-04-22</lastmod><changefreq>monthly</changefreq><priority>0.7</priority></url>
<url><loc>https://zhuinden.medium.com/i-specifically-tend-to-avoid-reflection-where-possible-because-then-you-have-to-remember-to-add-39595b33072f</loc><lastmod>2020-08-13</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/i-would-generally-advise-using-whatever-works-with-sufficient-reliability-customizability-and-d539afa2c60</loc><lastmod>2020-07-28</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/this-depends-entirely-on-your-design-and-your-design-requirements-28d44b19d6bb</loc><lastmod>2020-07-21</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/as-i-said-if-the-bottom-navigation-view-is-in-the-fragment-itself-and-not-managed-by-jetpack-874223870b25</loc><lastmod>2020-07-21</lastmod><changefreq>monthly</changefreq><priority>0.7</priority></url>
<url><loc>https://zhuinden.medium.com/this-block-was-copy-pasted-from-my-project-so-as-long-as-you-have-the-extension-function-and-you-9f443998323b</loc><lastmod>2020-07-06</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/mutablelivedata-should-come-from-savedstatehandle-getlivedata-3316fd5b91d3</loc><lastmod>2020-08-28</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/savedstatehandle-getlivedata-73dd01711f7f</loc><lastmod>2020-08-28</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/1-androidviewmodel-gets-android-app-application-bb46ac0931dc</loc><lastmod>2020-08-24</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/you-can-definitely-have-fragment-scoped-viewmodels-hilt-configures-the-factories-and-the-scoping-3c97f1b934eb</loc><lastmod>2020-08-19</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/when-you-ask-realm-to-compact-itself-it-creates-a-copy-without-preserving-the-empty-space-then-8362e6a5876b</loc><lastmod>2020-10-22</lastmod><changefreq>monthly</changefreq><priority>0.7</priority></url>
<url><loc>https://zhuinden.medium.com/if-you-need-to-pass-an-activity-instance-to-dependencies-then-you-have-two-options-either-28ab22045438</loc><lastmod>2020-09-30</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/repository-is-data-layer-concern-not-domain-layer-concern-8861ce4d1b5b</loc><lastmod>2020-09-20</lastmod><changefreq>monthly</changefreq><priority>0.7</priority></url>
<url><loc>https://zhuinden.medium.com/weakreference-for-an-async-result-that-came-in-after-a-config-change-will-either-point-to-null-or-a-1f34a78572c0</loc><lastmod>2020-11-30</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/i-wouldnt-even-create-a-common-supertype-to-accept-a-binding-parameter-just-pass-it-whatever-23a2e86cf9d8</loc><lastmod>2020-11-30</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/sure-but-you-cant-really-write-a-kotlin-delegate-in-java-in-such-a-way-that-the-api-would-be-a8ea32de99f8</loc><lastmod>2020-11-26</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/if-you-are-using-oncreatedialog-then-i-wouldnt-oncreateview-the-same-and-viewholder-just-gets-a-a82925968873</loc><lastmod>2020-11-26</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/you-dont-1caa13393118</loc><lastmod>2020-11-23</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/considering-you-are-skipping-the-inflate-and-bind-passing-to-the-viewbinding-property-via-ae1a56f3cf2d</loc><lastmod>2020-11-12</lastmod><changefreq>monthly</changefreq><priority>0.7</priority></url>
<url><loc>https://zhuinden.medium.com/1-not-sure-i-personally-copied-the-same-thing-google-is-doing-in-autoclearedvalue-in-the-c0e12f765184</loc><lastmod>2020-11-01</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/1-the-answer-itself-didnt-need-ktx-but-yes-you-can-definitely-use-ktx-version-fae6c8911dd0</loc><lastmod>2020-10-27</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/i-dont-use-koin-because-i-trust-manual-injection-over-koin-5ac8b3ebc49d</loc><lastmod>2020-12-28</lastmod><changefreq>monthly</changefreq><priority>0.7</priority></url>
<url><loc>https://zhuinden.medium.com/i-saw-your-article-bec15c4b6fa9</loc><lastmod>2020-12-28</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/because-oncreate-and-onviewcreated-does-not-exist-in-an-activity-does-not-exist-separately-in-dd95a2594a85</loc><lastmod>2020-12-23</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/i-dont-like-exposing-binding-variables-to-super-classes-because-just-the-other-day-i-had-to-f57dec351008</loc><lastmod>2020-12-12</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/creating-a-bottomnavigation-multi-stack-using-child-fragments-with-simple-stack-c73c1ca3bbd4</loc><lastmod>2021-01-25</lastmod><changefreq>monthly</changefreq><priority>1.0</priority></url>
<url><loc>https://zhuinden.medium.com/accessing-the-binding-through-the-binding-variable-would-return-an-outdated-view-that-differs-from-5066032ea893</loc><lastmod>2021-01-24</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/i-think-you-might-be-right-as-long-as-you-guarantee-that-your-binding-is-accessed-from-f038f3a5b408</loc><lastmod>2021-01-22</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/i-do-get-your-point-its-better-to-think-of-modularization-from-the-perspective-of-modularization-99067c39e8cd</loc><lastmod>2021-01-22</lastmod><changefreq>monthly</changefreq><priority>0.7</priority></url>
<url><loc>https://zhuinden.medium.com/generally-i-think-its-okay-to-wrap-the-dao-but-what-wraps-it-shouldn-t-be-a-repository-it-c628cf8739a5</loc><lastmod>2021-01-16</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/that-sounds-like-a-bug-to-report-to-ian-lake-on-twitter-and-google-issues-a009bbdeb897</loc><lastmod>2021-01-13</lastmod><changefreq>monthly</changefreq><priority>0.2</priority></url>
<url><loc>https://zhuinden.medium.com/by-level-it-refers-to-the-level-in-the-hierarchical-structure-of-the-application-ae5633834087</loc><lastmod>2021-01-06</lastmod><changefreq>monthly</changefreq><priority>0.7</priority></url>
<url><loc>https://zhuinden.medium.com/the-real-issue-with-reflection-based-navigation-apart-from-that-it-clearly-bypasses-module-3101496366a</loc><lastmod>2021-01-02</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/if-the-last-value-returned-from-the-let-32788339cc4e</loc><lastmod>2021-02-25</lastmod><changefreq>monthly</changefreq><priority>0.7</priority></url>
<url><loc>https://zhuinden.medium.com/i-understand-your-concern-but-the-bug-as-it-happened-could-only-be-possible-if-onviewcreated-560b17d44b45</loc><lastmod>2021-02-22</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/honestly-the-only-bug-i-know-of-in-hilt-atm-is-that-you-cant-create-2-viewmodels-of-the-same-797b564e43cb</loc><lastmod>2021-02-22</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/theoretically-if-viewlifecycleownerlivedata-is-always-non-null-then-this-would-also-work-yes-e169e61b5c04</loc><lastmod>2021-02-13</lastmod><changefreq>monthly</changefreq><priority>0.7</priority></url>
<url><loc>https://zhuinden.medium.com/lately-you-can-do-better-with-a-combination-of-savedstatehandle-because-of-initial-arguments-b5c360a1dc58</loc><lastmod>2021-02-10</lastmod><changefreq>monthly</changefreq><priority>0.7</priority></url>
<url><loc>https://zhuinden.medium.com/i-dont-want-to-be-negative-but-these-really-are-just-language-features-and-not-tricks-and-the-ec1c7a9d3d35</loc><lastmod>2021-02-08</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com</loc><lastmod>2026-07-03</lastmod><changefreq>weekly</changefreq><priority>1.0</priority></url>
<url><loc>https://zhuinden.medium.com/about</loc><lastmod>2026-07-03</lastmod><changefreq>weekly</changefreq><priority>1.0</priority></url>
<url><loc>https://zhuinden.medium.com/yes-but-whats-more-interesting-is-that-with-google-s-new-additions-like-hilt-they-actually-erase-497ad882158c</loc><lastmod>2021-03-08</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/technically-i-was-mirroring-behaviorrelay-which-does-not-support-kotlin-nullability-types-and-c035a8329d24</loc><lastmod>2021-03-08</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/yeah-i-didnt-consider-that-at-the-time-of-writing-but-since-then-i-ve-often-seen-people-try-to-2c54454c529b</loc><lastmod>2021-03-08</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/well-it-makes-just-as-much-sense-as-checknotnull-but-its-true-that-the-exception-message-won-t-f6823d67f770</loc><lastmod>2021-03-03</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/i-dont-think-you-d-need-so-many-callbacks-if-you-replace-the-cases-of-deferred-initialization-with-b3dd2d45aff3</loc><lastmod>2021-02-27</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/its-okay-although-i-prefer-when-to-this-construct-if-the-expression-on-the-true-side-or-1230d8211ecb</loc><lastmod>2021-02-26</lastmod><changefreq>monthly</changefreq><priority>0.7</priority></url>
<url><loc>https://zhuinden.medium.com/creating-a-bottomnavigation-multi-stack-using-child-fragments-with-jetpack-navigation-5d4c24ea6f4f</loc><lastmod>2021-02-26</lastmod><changefreq>monthly</changefreq><priority>1.0</priority></url>
<url><loc>https://zhuinden.medium.com/your-frustrated-is-warranted-this-article-is-riddled-with-malpractices-and-the-author-effectively-dc6b47d3104a</loc><lastmod>2021-04-09</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/the-limitations-on-data-types-having-to-make-them-parcelable-serve-an-important-purpose-49fcddf846fe</loc><lastmod>2021-04-09</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/i-cant-send-enough-claps-to-point-out-just-how-correct-you-are-8639723d614f</loc><lastmod>2021-04-09</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/no-navigation-compose-does-not-and-will-not-ever-support-parcelable-arguments-462e8d257640</loc><lastmod>2021-04-05</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/navigation-compose-does-not-support-parcelables-https-issuetracker-google-com-issues-182194894-36b7a4a5438f</loc><lastmod>2021-04-05</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/making-objects-passed-from-one-component-to-another-parcelable-serves-a-very-specific-purpose-b48b30fb6340</loc><lastmod>2021-04-05</lastmod><changefreq>monthly</changefreq><priority>0.7</priority></url>
<url><loc>https://zhuinden.medium.com/not-sure-why-you-need-the-custom-navigator-you-can-use-an-activity-level-disposableeffect-and-1325b7a0ba5e</loc><lastmod>2021-08-09</lastmod><changefreq>monthly</changefreq><priority>0.7</priority></url>
<url><loc>https://zhuinden.medium.com/this-article-has-been-here-since-july-and-pretty-much-all-of-it-is-false-information-3eceef6546d5</loc><lastmod>2021-09-21</lastmod><changefreq>monthly</changefreq><priority>0.7</priority></url>
<url><loc>https://zhuinden.medium.com/f-droid-isnt-a-big-enough-market-to-create-sustainable-apps-that-would-provide-revenue-and-is-cab1c6a896c4</loc><lastmod>2021-10-02</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/this-is-actually-bad-for-performance-the-correct-solution-is-to-use-concatadapter-config-isolatevi-1a63330f5efc</loc><lastmod>2021-12-14</lastmod><changefreq>monthly</changefreq><priority>0.7</priority></url>
<url><loc>https://zhuinden.medium.com/it-has-been-reported-to-me-that-the-stack-state-was-lost-after-2-consecutive-config-changes-545133eddf14</loc><lastmod>2022-01-20</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/i-wholeheartedly-agree-with-the-article-31fd20659d9</loc><lastmod>2022-02-15</lastmod><changefreq>monthly</changefreq><priority>0.7</priority></url>
<url><loc>https://zhuinden.medium.com/fragments-are-not-legacy-a5795f75d0d9</loc><lastmod>2022-02-15</lastmod><changefreq>monthly</changefreq><priority>0.7</priority></url>
<url><loc>https://zhuinden.medium.com/i-prefer-manual-dependency-injection-8d247c78174e</loc><lastmod>2022-04-03</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/it-does-work-but-you-can-also-pass-arguments-to-the-viewmodel-directly-via-savedstatehandle-e4c916db431c</loc><lastmod>2022-04-19</lastmod><changefreq>monthly</changefreq><priority>0.7</priority></url>
<url><loc>https://zhuinden.medium.com/now-try-passing-a-or-a-into-the-text-field-before-navigating-to-the-next-screen-29a301795b23</loc><lastmod>2022-05-24</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/why-not-use-viewmodels-savedstatehandle-saveable-3067f4447c37</loc><lastmod>2022-09-15</lastmod><changefreq>monthly</changefreq><priority>0.7</priority></url>
<url><loc>https://zhuinden.medium.com/nice-example-i-had-to-implement-something-just-like-this-except-i-also-had-to-be-able-to-select-71287d48074c</loc><lastmod>2022-12-26</lastmod><changefreq>monthly</changefreq><priority>0.7</priority></url>
<url><loc>https://zhuinden.medium.com/overall-good-advice-the-only-part-im-not-sold-on-is-the-data-domain-ui-split-in-the-final-971504ff193a</loc><lastmod>2023-04-18</lastmod><changefreq>monthly</changefreq><priority>0.7</priority></url>
<url><loc>https://zhuinden.medium.com/hoping-for-the-migrate-from-mvi-to-mvvm-article-soon-536b84f97e65</loc><lastmod>2023-04-16</lastmod><changefreq>monthly</changefreq><priority>0.7</priority></url>
<url><loc>https://zhuinden.medium.com/android-lifecycle-hasnt-gone-anywhere-just-because-the-ui-toolkit-has-its-own-lifecycle-98200d9883f7</loc><lastmod>2023-05-16</lastmod><changefreq>monthly</changefreq><priority>0.7</priority></url>
<url><loc>https://zhuinden.medium.com/its-really-not-7b4a6d9b31e5</loc><lastmod>2024-03-22</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/whos-to-say-mvi-isn-t-already-in-itself-a-design-flaw-f904099c32df</loc><lastmod>2024-03-22</lastmod><changefreq>monthly</changefreq><priority>0.7</priority></url>
<url><loc>https://zhuinden.medium.com/the-theoretical-solution-for-vms-is-embedded-in-jetpack-navigation-which-is-that-viewmodels-can-be-aaac38fefc4f</loc><lastmod>2024-12-27</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/its-been-3-5-15eea03d77f2</loc><lastmod>2024-12-22</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/surprised-that-now-ffmpeg-kit-is-over-and-the-binaries-are-going-to-be-removed-c482571531ea</loc><lastmod>2025-01-16</lastmod><changefreq>monthly</changefreq><priority>0.7</priority></url>
<url><loc>https://zhuinden.medium.com/arrow-api-has-shifted-far-too-much-far-too-often-in-recent-years-for-me-to-want-to-add-it-as-a-6e2f3062d0e1</loc><lastmod>2025-03-07</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
<url><loc>https://zhuinden.medium.com/xml-constraintlayout-isnt-free-e82d5bc390eb</loc><lastmod>2025-04-11</lastmod><changefreq>monthly</changefreq><priority>0.2</priority></url>
<url><loc>https://zhuinden.medium.com/trunk-based-development-is-crying-in-a-corner-c7bc11bc4108</loc><lastmod>2025-08-08</lastmod><changefreq>monthly</changefreq><priority>0.7</priority></url>
<url><loc>https://zhuinden.medium.com/this-article-is-deceptive-regarding-navigation-compose-argument-passing-and-will-be-fully-obsolete-8f6bff7ced4f</loc><lastmod>2025-08-19</lastmod><changefreq>monthly</changefreq><priority>0.2</priority></url>
<url><loc>https://zhuinden.medium.com/i-always-wondered-why-c-has-all-those-cool-complex-state-machine-libraries-and-in-the-meantime-we-4bdcdf42c30f</loc><lastmod>2025-09-25</lastmod><changefreq>monthly</changefreq><priority>0.7</priority></url>
<url><loc>https://zhuinden.medium.com/theres-nothing-wrong-with-mvvm-just-don-t-use-databinding-b5465fb25846</loc><lastmod>2025-10-03</lastmod><changefreq>monthly</changefreq><priority>0.7</priority></url>
<url><loc>https://zhuinden.medium.com/savedsavedstatehandle-handles-both-argument-passing-and-restoring-screen-level-state-youre-not-bf33eef04ea7</loc><lastmod>2026-06-05</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>
</urlset>
