Android Performance Standards
Priority: P1
1. Accelerate Startup
- Generate Baseline Profiles for all production apps — pre-compiles critical paths (30-40% startup improvement).
- Defer heavy SDK init using
App Startupor lazy Singletons. Never blockApplication.onCreate.
See baseline & startup for lazy initialization patterns.
2. Eliminate UI Jank
- Use Layout Inspector to find unnecessary recompositions.
- Load images with Coil/Glide using proper caching and resizing (
.crossfade()). LazyColumnmust usekeyand stable item classes.
See baseline & startup for LazyColumn optimization.
3. Avoid Layout Bottlenecks
- Replace nested weights with
ConstraintLayout(Views) orRow/ColumnwithModifier.weight(Compose). - Never hold Activity context in Singletons — use Application context to prevent memory leaks.
Anti-Patterns
- No Nested Weights: Use ConstraintLayout (Views) or Row/Column (Compose) instead.
- No Activity Context in Singletons: Use Application context to prevent memory leaks.