ART Articles

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.

Inside the Android ART dex2oat Pipeline: From DEX Bytecode to OAT Machine Code

A practical walkthrough of the dex2oat pipeline, compiler filter trade-offs, JIT and AOT cooperation, and Baseline Profile startup optimization.

Inside Android ART Garbage Collection

A practical look at ART garbage collection, from Dalvik mark-sweep to CMS, Concurrent Copying, generational GC, allocation storms, LOS behavior, and startup tuning.

ART Runtime and Advanced Memory Management (1): Foundations

Part 1 of ART Runtime and Advanced Memory Management: why ART, GC, and memory strategy are foundations for Android performance and stability.

ART Runtime and Advanced Memory Management (2): ART GC

Part 2 of ART Runtime and Advanced Memory Management: a deep look at ART heap structure, GC algorithms, pauses, barriers, and GC logs.

ART Runtime and Advanced Memory Management (3): Diagnosis

Part 3 of ART Runtime and Advanced Memory Management: diagnosing leaks, churn, fragmentation, Bitmap memory, OOM, and memory tools.

ART Runtime and Advanced Memory Management (4): Native Memory

Part 4 of ART Runtime and Advanced Memory Management: native memory sources, detection tools, optimization strategies, and memory discipline.

ART Runtime and Advanced Memory Management Strategies

A deep Android memory-management guide covering ART compilation, garbage collection, memory leaks, OOM, MAT, Perfetto, native memory tools, Bitmap optimization, and advanced strategies.