Android Engineering Articles · Page 2
Android Reflection Under the Hood: Hidden API Greylist Bypass to Runtime Dynamic Proxy Metaprogramming
Starting from a NoSuchMethodException crash, this article examines how Android's reflection mechanism works at the ART layer, the filtering logic of the three-tier hidden API greylist, and the applicable boundaries of three bypass approaches — meta-reflection replacement, setHiddenApiExemptions, and clearing flag bits via JNI — then discusses dynamic proxy production engineering and the engineering trade-offs of metaprogramming.
Read Post
Android Analytics SDK End-to-End: From Event Collection Design to a Reliable Data Reporting Pipeline
A systematic walkthrough of an Android analytics SDK's full pipeline: event modeling, exposure collection and deduplication, mmap persistence over SQLite, batch compression with exponential-backoff reporting, and privacy compliance and production monitoring.
Read Post
Integrating On-Device AI Inference into Compose: State Machines, Lifecycle Isolation, and Streaming Rendering
A practical pattern for wiring on-device AI inference into Jetpack Compose: sealed-class state machines, lifecycle-safe coroutines, and frame-aligned streaming.
Read Post
Kotlin Sequence vs. Iterable: Lazy Collection Performance
How Kotlin Sequences avoid intermediate allocations through lazy evaluation, the Iterator protocol and yield, with benchmark data and practical selection guidance.
Read Post
Systematic Fault-Tolerant UI States in Android
A systematic approach to modeling loading, content, empty, and error states in Android apps.
Read Post
Customizing RecyclerView SnapHelper for Multi-Page Fling Snapping
A guide to RecyclerView's SnapHelper: how it intercepts flings, maps velocity to positions, and calculates final snapping offsets, with custom strategies.
Read Post
Kotlin Error Handling: try-catch, Result, and Arrow Either
A practical comparison of try-catch, Kotlin Result, and Arrow Either for structuring error handling in Android apps.
Read Post
Unified Runtime Skinning for View and Compose with One Theme State
A unified architecture that shares one theme state across View and Compose, so runtime theme switching works seamlessly without recreating activities.
Read Post
Containing Non-Deterministic Output in On-Device AI Inference Testing
A practical guide to testing on-device AI inference with tolerance-based golden snapshots and P95 latency baselines.
Read Post
Forms Are Not UI—They Are State Machines
A practical Compose pattern for modeling forms as state machines: field state, form orchestration, dynamic lists, and cross-field linkage.
Read Post
Android FlexboxLayout and RecyclerView: W3C Spec in Measure/Layout
How Android FlexboxLayout maps the W3C flexbox spec onto View measure/layout, and how to combine it with RecyclerView.
Read Post
RecyclerView ItemDecoration: The Decorating Engine for Sticky Headers and Timelines
ItemDecoration is more than dividers. Learn how onDraw, onDrawOver, and getItemOffsets power sticky headers, timelines, and group labels in RecyclerView.
Read Post
On-Device AI Remote Configuration and A/B Testing for Android
A production approach to lightweight remote config, deterministic on-device A/B experiments, and safe rollback for on-device AI inference.
Read Post
Android On-Device Inference with GGUF and llama.cpp
A practical walkthrough for porting and tuning llama.cpp with GGUF to run a 7B model on a Snapdragon 8 Gen 2 phone.
Read Post
A Lightweight Debugging Toolchain for Android On-Device AI Inference
A practical debugging toolchain for Android on-device AI inference, covering input visualization, intermediate output capture, latency breakdown, and memory monitoring.
Read Post
Android Instant Apps: Legacy Architecture After Shutdown
(Updated on )
Review Instant Apps modules and URL routing as legacy architecture. Google Play Instant stopped serving apps in December 2025.
Read Post
On-Device Model Drift Detection and Automatic Rollback for Android
A practical on-device quality system for Android OCR models: lightweight PSI drift detection, model versioning, automatic rollback, and device-cloud feedback.
Read Post
On-Device AI Prompt Injection and Defense in Depth
How prompt injection, jailbreaks, and tool-call side effects threaten on-device AI, plus a four-layer defense from input classifiers to Native-layer data masking.
Read Post
AnimatedVectorDrawable to Compose Vector Animation
How AnimatedVectorDrawable bridges ObjectAnimator to VectorDrawable nodes, and how Compose reuses the same AVD model.
Read Post
Android Adaptive Refresh Rate, LTPO, and Choreographer: From preferredDisplayModeId to Hardware Shadow Scheduling
Why a 120Hz LTPO device holds video playback at 60Hz, how DisplayModeDirector arbitrates refresh rate votes, and how to adapt Choreographer timing when VSYNC changes.
Read Post