Android Articles

Kotlin Multiplatform Engineering: expect/actual and Cross-Platform Architecture

A production-focused guide to Kotlin Multiplatform, covering expect/actual boundaries, three-layer architecture, XCFramework configuration, and Compose Multiplatform collaboration.

Android 16 Edge-to-Edge: WindowInsets Dispatch and System Bar Adaptation

Android 16 treats forced edge-to-edge as a breaking change for targetSdk 36 apps. This guide explains the WindowInsets dispatch path and practical adaptation strategies for both View and Compose UIs.

Android 16 Edge-to-Edge: WindowInsets Dispatch and System Bar Adaptation

Android 16 treats forced edge-to-edge as a breaking change for targetSdk 36 apps. This guide explains the WindowInsets dispatch path and practical adaptation strategies for both View and Compose UIs.

Android Local LLM Inference: LiteRT, MediaPipe, Quantization, and Production Trade-offs

A practical guide to Android local LLM inference across LiteRT, ONNX Runtime Mobile, MediaPipe LLM Inference, INT4 quantization, GPU delegates, KV cache memory, and device fallback.

Android On-device AI Benchmarking: Latency, Throughput, Power, and Thermal Degradation

A practical benchmark methodology for Android on-device AI inference across latency, throughput, power, thermal throttling, long-tail metrics, GPU sync, and automated test reports.

Jetpack Compose Snapshot State: From MutableState to Recomposition

A deep dive into Compose Snapshot as an MVCC runtime, covering MutableState writes, Snapshot apply, RecomposeScope invalidation, derivedStateOf, and MutationPolicy.

Android Official Skills Deep Dive: Redefining Android Development Workflows with AI Agents

A deep dive into Google's official android/skills repository, a structured instruction set for AI agents that covers Compose migration, Navigation 3, R8 optimization, and other core Android workflows.

Android Bitmap Memory Model: From Java Heap to Hardware Bitmap

A deep dive into how Android Bitmap pixel storage moved between native heap, Java heap, and GPU memory, and what that means for OOM prevention.

Android Navigation3 Architecture: Putting the Back Stack Back in Developers' Hands

A close look at Navigation3's core design: turning the back stack from a NavController black box into developer-owned Compose state, with Scene strategies for multi-pane layouts.

Android RecyclerView Cache: Four Levels, Reuse, and Prefetch

A deep dive into RecyclerView's four cache layers, their different hit costs, GapWorker prefetch, and practical tuning for smoother scrolling.

Android User Data Backup and Restore: Auto Backup, Key/Value Backup, and DataStore

A deep dive into Android Auto Backup and Key/Value Backup, with practical DataStore migration lessons, backup scheduling, transport encryption, restore pitfalls, and adb debugging commands.

Android In-App Search: From FTS Full-Text Indexing to Compose Search UI

A full-stack walkthrough of Android in-app search optimization, from SQLite FTS5 indexes and Room integration to debounced Compose search that reduced response time from 1.8 seconds to 15 ms.

Android Multi-Process Architecture: WebView Isolation and Remote Service Stability

Engineering practices for Android multi-process architecture, including WebView crash isolation, memory separation, AIDL callbacks, process death handling, and Remote Service tradeoffs.

Android Cross-Device Collaboration: From Cross-Device SDK to Communication Architecture

A practical account of moving from Nearby Connections to the Cross-Device SDK, using Session and Resource abstractions to improve connection stability, message reliability, and state management.

Android init and the Boot Process: From BootLoader to Home Screen

A deep dive into Android init, from BootLoader to Home Screen, covering init.rc parsing, property triggers, system_server startup, and boot optimization.

Android Wear OS Compose: ScalingLazyColumn, Tiles, and DataLayer

A practical deep dive into adapting Compose UI for Wear OS, covering round-screen clipping, ScalingLazyColumn, Tile rendering constraints, and DataLayer synchronization.

Android Task Stack and Activity Launch Modes: A Full-Path Guide

A practical guide to Android Tasks, the back stack, standard, singleTop, singleTask, and singleInstance, with Intent flags and taskAffinity tradeoffs.

Android Studio Gemini AI Assistant: Context, Prompts, and Refactoring

A practical deep dive into Android Studio Gemini, covering context windows, prompt engineering, multi-file refactoring, and engineering habits for AI-assisted Android development.

Android OTA System Updates: From A/B Partitions to Virtual A/B Snapshots

A deep dive into Android's OTA update pipeline, covering A/B seamless updates, update_engine incremental payloads, rollback protection, dynamic partitions, Virtual A/B snapshots, and practical debugging commands.

Android Gradle Version Catalogs and Convention Plugins in Practice

A migration story from buildSrc to Version Catalogs and Convention Plugins in a 30+ module Android project, covering dependency governance, precompiled build logic, and practical pitfalls.