<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>AppMama blog</title>
    <link>https://appmama.app/blog/</link>
    <atom:link href="https://appmama.app/blog/feed.xml" rel="self" type="application/rss+xml"/>
    <description>Practical guides to building Android apps: Gradle, Jetpack Compose, design, architecture and shipping.</description>
    <language>en</language>
    <lastBuildDate>Thu, 05 Nov 2026 09:00:00 +0000</lastBuildDate>
    <item>
      <title>Gradle Version Catalogs in Android: A Complete Guide</title>
      <link>https://appmama.app/blog/gradle-version-catalogs</link>
      <guid isPermaLink="true">https://appmama.app/blog/gradle-version-catalogs</guid>
      <pubDate>Thu, 05 Nov 2026 09:00:00 +0000</pubDate>
      <description>Set up libs.versions.toml in an Android project: versions, libraries, bundles, plugins, BOMs, convention plugins and migrating from ext or buildSrc.</description>
    </item>
    <item>
      <title>How to Fix Common Android Gradle Build Errors</title>
      <link>https://appmama.app/blog/fix-android-gradle-build-errors</link>
      <guid isPermaLink="true">https://appmama.app/blog/fix-android-gradle-build-errors</guid>
      <pubDate>Thu, 05 Nov 2026 09:00:00 +0000</pubDate>
      <description>Fix Android Gradle build errors: AGP/Gradle/JDK mismatches, duplicate classes, JVM target, compileSdk, namespace, out-of-memory and R8 missing classes.</description>
    </item>
    <item>
      <title>Jetpack Compose vs XML: Which to Use for a New App</title>
      <link>https://appmama.app/blog/jetpack-compose-vs-xml</link>
      <guid isPermaLink="true">https://appmama.app/blog/jetpack-compose-vs-xml</guid>
      <pubDate>Thu, 05 Nov 2026 09:00:00 +0000</pubDate>
      <description>Jetpack Compose vs XML views: which to pick for a new Android app, how ComposeView and AndroidView interop works, real performance, and how to migrate.</description>
    </item>
    <item>
      <title>Material 3 Theming in Jetpack Compose: Complete Guide</title>
      <link>https://appmama.app/blog/material-3-compose-theming</link>
      <guid isPermaLink="true">https://appmama.app/blog/material-3-compose-theming</guid>
      <pubDate>Thu, 05 Nov 2026 09:00:00 +0000</pubDate>
      <description>Material 3 theming in Jetpack Compose: color roles, dynamic color, dark theme, typography, shapes and custom tokens, with code you can copy.</description>
    </item>
    <item>
      <title>Android App Architecture: A Practical Modern Guide</title>
      <link>https://appmama.app/blog/android-app-architecture</link>
      <guid isPermaLink="true">https://appmama.app/blog/android-app-architecture</guid>
      <pubDate>Thu, 05 Nov 2026 09:00:00 +0000</pubDate>
      <description>Modern Android app architecture in practice: UI state, ViewModel and StateFlow, unidirectional data flow, repositories, use cases and modules.</description>
    </item>
    <item>
      <title>Essential Android Libraries for a New App</title>
      <link>https://appmama.app/blog/essential-android-libraries</link>
      <guid isPermaLink="true">https://appmama.app/blog/essential-android-libraries</guid>
      <pubDate>Thu, 05 Nov 2026 09:00:00 +0000</pubDate>
      <description>The essential Android libraries for a new Compose app: Room, DataStore, Retrofit vs Ktor, Coil, Hilt vs Koin, WorkManager, Navigation 3, Paging, Timber.</description>
    </item>
    <item>
      <title>How to Reduce Android App Size (APK and AAB)</title>
      <link>https://appmama.app/blog/reduce-android-app-size</link>
      <guid isPermaLink="true">https://appmama.app/blog/reduce-android-app-size</guid>
      <pubDate>Thu, 05 Nov 2026 09:00:00 +0000</pubDate>
      <description>Cut your Android APK and AAB size with R8, resource shrinking, App Bundles, WebP, locale filters and native lib tuning, measured with APK Analyzer.</description>
    </item>
    <item>
      <title>Room vs DataStore vs SharedPreferences on Android</title>
      <link>https://appmama.app/blog/room-vs-datastore</link>
      <guid isPermaLink="true">https://appmama.app/blog/room-vs-datastore</guid>
      <pubDate>Thu, 05 Nov 2026 09:00:00 +0000</pubDate>
      <description>When to use Room, DataStore or SharedPreferences in an Android app, with Kotlin examples and a step-by-step SharedPreferences to DataStore migration.</description>
    </item>
    <item>
      <title>Edge-to-Edge on Android 15+: Insets in Compose and Views</title>
      <link>https://appmama.app/blog/edge-to-edge-android</link>
      <guid isPermaLink="true">https://appmama.app/blog/edge-to-edge-android</guid>
      <pubDate>Thu, 05 Nov 2026 09:00:00 +0000</pubDate>
      <description>Android 15 forces edge-to-edge and Android 16 removes the opt-out. Learn enableEdgeToEdge, WindowInsets in Compose and Views, IME insets and fixes.</description>
    </item>
    <item>
      <title>Android App Signing: Keystores, Upload Keys and Play Signing</title>
      <link>https://appmama.app/blog/android-signing-keys</link>
      <guid isPermaLink="true">https://appmama.app/blog/android-signing-keys</guid>
      <pubDate>Thu, 05 Nov 2026 09:00:00 +0000</pubDate>
      <description>Debug vs release keys, keystores, Play App Signing and upload keys, secure signingConfigs in Gradle, and how to reset a lost upload key.</description>
    </item>
  </channel>
</rss>
