What's in the Android Toolbox?
summary
Build steps list exact tools and outcomes: Java/Kotlin → javac → DX or D8+R8 replaces DX and ProGuard and produces dex; AAPT/AAPT2 compiles resources and generates R classes (AAPT2 links earlier and enforces stricter manifest rules); Gradle plugin 3.x orchestrates tasks and uses pkgzlib to sign/align efficiently; v2 signatures are default and v2 signing requires zipalign before signing while v1 needs zipalign after; multi‑dex exists for the 65k limit; observed speed wins: Gradle plugin 3.0 cuts 2m15s→6s for a one-line change.
AI-written summary · about
chapters (34)
- 0:00What's in the Android Toolbox?
- 0:27What tools?
- 2:02What's in an APK?
- 6:55Shift from generic tools to Android-specific tools
- 7:18incrementality parallelism
- 7:30Gradle The orchestrator
- 8:02By default Gradle does nothing
- 8:12Plugins add functionality
- 8:35Plugins can extend the DSL
- 8:54Plugins can add dependency configurations
- 9:19Plugins can add tasks
- 9:32Android Plugin 3.X & Gradle 4.x
- 13:03Code Generation Dagger Butterknife Databinding
- 13:23Compile javac / kotlinc
- 15:59DX is the current dexing tool
- 16:31Sinking Your Teeth Into Bytecode
- 17:38Default in Studio + Gradle Plugin 3.1
- 18:52Jack and Jill Dead tools
- 20:26ProGuard The old guard
- 21:57AAPT automatically generates ProGuard rules for
- 22:14ProGuard is an open-source Java shrinker, obfuscation, and optimization tool
- 23:36R8 does full program Shrinking, obfuscation, and optimization
- 24:26Package Making the APK
- 24:40AAPT packages, reads, and updates APKs
- 24:51Processes resources
- 25:13AAPT2 Android Asset Packaging Tool 2
- 25:24AAPT2 is enabled by default as of plugin 3.0.0
- 25:43AAPT2 split linking and compilation
- 26:38APK Signing
- 27:25v1 signatures use jarsigner
- 28:28Gradle Plugin 2.2+ defaults to v2 signatures
- 29:04Zipalign aligns APKs on 4-byte boundaries
- 31:55ART Android Runtime
- 33:35Interpreted (.dex)
related talks
44mBuild your android app without the Android Gradle Plugin
55mCompilers. Dalvik. ART. And everything in between
43mThe New Android SDK Build System
45mThe Android Build System
46mFrom Source Code to APK: A Manual Deep Dive into the Android Build Process
34mWhat's new in Android development tools
34mWhat's new with the Android Gradle plugin
28mBest practices using compilers in Android Studio
