Target: <10MB APK for arm64-v8a Rust optimizations (Cargo.toml): - opt-level = 'z' (size over speed) - LTO enabled (dead code elimination) - panic = 'abort' (no unwinding) - strip = true (remove symbols) - Minimal tokio/serde features Android optimizations (build.gradle.kts): - Split APKs by ABI (users get only their arch) - Remove material-icons-extended (-5MB) - Remove unused serialization (-300KB) - Remove debug symbols in release ProGuard (proguard-rules.pro): - Strip Log.v/d/i in release - Remove Kotlin null checks - Aggressive repackaging - 5 optimization passes Added SIZE.md with optimization strategy. Expected sizes: - Native lib: <3MB per ABI - APK (arm64): <10MB - APK (universal): <20MB |
||
|---|---|---|
| .. | ||
| src | ||
| Cargo.toml | ||
| uniffi-bindgen.rs | ||